MODIFICA 2: anche fare "ls *()" fa sì che bash non restituisca e utilizzi il 100% di una cpu. Qualcuno sa perché bash sta facendo questo?Passare "*()" come argomento a un programma in bash
Stavo imparando C e imparavo argomenti e mi chiedevo quali caratteri facessero cose strane quando passavano come argomenti. Ho superato "*()" senza virgolette ad un programma C attraverso bash come:
$ ./program *()
Bash non poteva essere uscire con ctrl c o ctrl z. Quando ho guardato htop, usavo il 100% di una CPU e ho dovuto SIGKILL. Qualcuno sa cosa sta succedendo qui. Sono solo curioso.
EDIT: anche il semplice programma di
#include <stdio.h>
int main(int argc, char *argv[]){ return 0; }
cause questo comportamento.
quale programma era? –
Si dovrebbe avere un errore di sintassi da 'bash' a causa delle parentesi non quotate. – chepner
@chepner 'ls *()' non fa nulla di utile sul mio sistema, ma non ottengo un errore da bash sulle parentesi – hetepeperfan