grep: nie znaleziono polecenia [duplikat]

19

To bardzo dziwne zachowanie. Ostatnio, ilekroć próbuję znaleźć proces na konsoli ps aux | grep foo, zwraca on grep: command not found. Ok, to może być coś, co zmieniłem i zrobiłem źle, ale problem polega na tym, że po kilku próbach nagle wie, co grepto jest:

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

Wszelkie pomysły, dlaczego tak się dzieje?

Zgodnie z sugestią, to jest to, co dostaję, gdy wchodzę type greppo obu, jeden zawodzi i ten działa:

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
makeMonday
źródło
Dziwne. Czy wpisujesz polecenie za każdym razem, czy po prostu przewijasz w historii poleceń?
nohillside
Już miałem to napisać. Kiedy przewijam do tyłu, to nie działa. Jeśli odpiszę, to też nie działa. Ale jeśli przewinę do tyłu i usunę greprurkę i potok, to w końcu zadziała. O_O
makeMonday

Odpowiedzi:

38

Patrząc na twój wynik, wydaje się, że jest więcej miejsca przed grepkomunikatem o błędzie. Zakładam, że pochodzi to od wciąż naciskanego Opt/Altklawisza po wpisaniu symbolu potoku (więc w zasadzie piszesz Opt- Spacezamiast po prostu Space). Spróbuj ps aux |grep foo(bez odstępu między rurą a g).

nohillside
źródło
2
To jest to: D Zwykle używam emacsa, a kiedy przypadkowo wpisuję Opt + Space, widzę coś podobnego _. Więc w terminalu po prostu mi tego brakowało. Dzięki :)
makeMonday
O mój boże ... zdarzało mi się tak często i to było po prostu to. jak głupio!
Marc-Alexandre Bérubé
zdarzało mi się to wiele razy, dziękuję bardzo za twoją odpowiedź, naprawdę doceniam, od teraz będę pisać | grep !! Zastanawiam się nad tym od lat!
esaruoho
6

Moja odpowiedź może brzmieć dziwnie, ale miałem ten efekt również ze starą klawiaturą, gdy pisałem zbyt szybko. Po prostu spróbuj wpisać go ponownie, przesuń kursor przed literą „g” grep, usuń białe znaki, które można wprowadzić za pomocą wciąż wciśniętego ALT/Optionklawisza, ponownie naciśnij klawisz spacji i uruchom linię poleceń.

Innym obejściem jest obniżenie częstotliwości powtarzania klawiatury w Preferencjach systemowych, jeśli nie piszesz za pomocą dziesięciu palców. :-)

Garex
źródło
To było to! @patrix też to sugerował. Głupie z mojej strony, że nie zdawałem sobie sprawy, ale czasami po prostu chcę pisać zbyt szybko. Dzięki.
makeMonday