Почему эта команда не работает: «ps aux | grep xscreensaver »

9

Я не видел ни одного хита по этому поводу в Google, поэтому я спрашиваю вас:

Я только что попытался выполнить эту команду в сеансе ssh, локальным является Debian Wheezy KDE, удаленным является Fedora 21 Gnome:

ps aux | grep xscreensaver

и это вывод:

bash:  grep: command not found...

Я никогда не видел этого раньше, в чем причина?

Я всего за несколько часов до этого обновил систему, но не увидел пакетов, помеченных для удаления. В системе всего два пользователя, и только я устанавливаю или удаляю на ней программное обеспечение.

РЕДАКТИРОВАТЬ # 1

Вот команды и выходные данные скопированы, обратите внимание, что пробела нет во второй раз:

[root@Hostname ~]# ps aux |  grep xscreensaver
bash:  : command not found...
[root@Hostname ~]# ps aux | grep xscreensaver
bash:  grep: command not found...
что-то что-то
источник

Ответы:

14

Обратите внимание на двойной пробел в bashсообщении об ошибке перед " grep": это, вероятно, означает, что вы ввели неразрывный пробел ( AltGr+ space), что может случиться довольно легко, если вашей клавиатуре требуется AltGrсоздать символ канала.

Попробуйте опустить пробелы вокруг символа трубы:

ps aux|grep xscreensaver

В ваших обновленных примерах:

[root@Hostname ~]# ps aux |  grep xscreensaver
bash:  : command not found...

bashпытается запустить команду «unbreakable space», которой не существует; отсюда и сообщение об ошибке "пробел не разбивается": команда не найдена ...

[root@Hostname ~]# ps aux | grep xscreensaver
bash:  grep: command not found...

bashпытается запустить команду с именем «grep», которому предшествует неразрывный пробел, которого тоже не существует; отсюда и сообщение об ошибке с двумя очевидными пробелами между «bash:» и «grep».

Стивен Китт
источник
Смотрите мое обновление, вы на правильном пути, потому что теперь по какой-то причине это работает.
что-то что-то
2

Система не может найти вашу grepкоманду. Попробуйте исправить это или добавьте полный путь к команде:

ps aux | /bin/grep xscreensaver

Вероятно, вам нужно исправить вашу PATHпеременную.

jherran
источник
Да, ваше право, ваша команда работает.
что-то что-то
2

пытаться

 which grep

или при необходимости

whereis grep

это может дать вам какую-то идею, если есть grep

repzero
источник