grep: comando non trovato [duplicato]


18

Questa domanda ha già una risposta qui:

Questo è un comportamento molto strano. Ultimamente, ogni volta che sto cercando di trovare un processo su console con ps aux | grep foo, viene restituito un grep: command not found. Ok, potrebbe essere qualcosa che ho cambiato e fatto di sbagliato, ma il problema è che, dopo alcuni tentativi, improvvisamente sa cos'è grep:

MM:.dev$ ps aux | grep foo
-bash:  grep: command not found
MM:.dev$ ps aux | grep foo
-bash:  grep: command not found
MM:.dev$ ps aux | grep foo
-bash:  grep: command not found
MM:.dev$ ps aux | grep foo
MM            70953   0,0  0,0  2699108    744   ??  Ss   10:32AM   0:08.77 foo bar
MM             3756   0,0  0,0  2423356    204 s004  R+   10:12AM   0:00.00 grep foo

Qualche idea sul perché questo accada?

Come suggerito, questo è quello che ottengo quando un invio type grepdopo entrambi, quello che non funziona e quello che funziona:

MM:.dev$ ps aux | grep foo
-bash:  grep: command not found
MM:.dev$ type grep
grep is /usr/bin/grep
MM:.dev$ ps aux | grep foo
MM             5694   0,0  0,0  2433796    676 s006  S+   10:47AM   0:00.00 grep foo
MM:.dev$ type grep
grep is /usr/bin/grep

Strano. Digitare nuovamente il comando ogni volta o scorrere semplicemente indietro nella cronologia dei comandi?
Nohillside

Stavo per scriverlo. Quando scorro indietro non funziona. Se lo riscrivo, non funziona neanche. Ma se scorro indietro ed elimino grepil tubo e, alla fine funziona. O_O
make Martedì

Risposte:


36

Guardando il tuo output, sembra esserci uno spazio extra prima grepnel messaggio di errore. Presumo che questo provenga da un tasto ancora premuto Opt/Altdopo aver digitato il simbolo della pipe (quindi in pratica stai scrivendo Opt- Spaceinvece che semplicemente Space). Prova ps aux |grep foo(senza uno spazio tra il tubo e il g).


2
Ecco fatto: D Normalmente, utilizzo emacs, e lì quando scrivo accidentalmente Opt + Space posso vedere qualcosa di simile a _. Quindi nel terminal mi mancava proprio quello. Grazie :)
MakeMonday

Oh mio Dio .. mi è successo così spesso e questo è stato semplicemente. che stupido!
Marc-Alexandre Bérubé,

questo è successo così tante volte a me, grazie mille per la tua risposta, lo apprezzo molto, sarò sicuro di scrivere | grep da ora in poi !! Mi sto chiedendo questo da anni!
esaruoho,

6

La mia risposta può sembrare strana, ma ho avuto questo effetto anche con una vecchia tastiera quando ho digitato troppo velocemente. Prova a digitarlo di nuovo, muoviti con il cursore prima della lettera "g" di grep, elimina lo spazio bianco che avrebbe potuto essere inserito con un tasto ancora premuto ALT/Option, premi di nuovo il tasto spazio e accendi la tua riga di comando.

Un'altra soluzione alternativa consiste nel ridurre la frequenza di ripetizione della tastiera in Preferenze di Sistema, se non si digita con dieci dita. :-)


Questo è stato! @patrix ha suggerito anche questo. Stupido da parte mia per non essermi accorto, ma a volte voglio solo scrivere troppo in fretta. Grazie.
make Martedì
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.