Пробел (и знак трубы) работает только в случае

У меня есть проблема, когда я пытаюсь написать знак канала "|" и пробел после этого я иногда получаю неправильный тип пробела (\ 240), и моя команда терпит неудачу. Эта проблема сохраняется на разных оболочках.

Как я могу это исправить?

Я использую финскую раскладку клавиатуры.

timo@timo-i7-ubuntu:~$ ps -ef | grep ruby
timo      7169  2633  0 12:12 pts/2    00:00:00 ruby1.9.1 /usr/local/bin/rails new admin4
timo      8736 26515  0 14:22 pts/4    00:00:00 grep --color=auto ruby
timo@timo-i7-ubuntu:~$ ps -ef | grep ruby
No command ' grep' found, did you mean:
 Command 'igrep' from package 'openimageio-tools' (universe)
 Command 'dgrep' from package 'debian-goodies' (main)
 Command 'rgrep' from package 'grep' (main)
 Command 'zgrep' from package 'gzip' (main)
 Command 'zgrep' from package 'zutils' (universe)
 Command 'sgrep' from package 'sgrep' (universe)
 Command 'lgrep' from package 'lv' (universe)
 Command 'egrep' from package 'grep' (main)
 Command 'ngrep' from package 'ngrep' (universe)
 Command 'grep' from package 'grep' (main)
 Command 'agrep' from package 'agrep' (multiverse)
 Command 'pgrep' from package 'procps' (main)
 Command 'xgrep' from package 'xgrep' (universe)
 Command 'vgrep' from package 'atfs' (universe)
 Command 'fgrep' from package 'grep' (main)
 grep: command not found

timo@timo-i7-ubuntu:~$ cat pipecom
ps -ef | grep rails
timo@timo-i7-ubuntu:~$ cat pipecom2
ps -ef | grep rails
timo@timo-i7-ubuntu:~$ ./pipecom
timo      7169  2633  0 12:12 pts/2    00:00:00 ruby1.9.1 /usr/local/bin/rails new admin4
timo      8777  8775  0 14:26 pts/4    00:00:00 grep rails
timo@timo-i7-ubuntu:~$ ./pipecom2
./pipecom2: line 1: \302\240grep': command not found
timo@timo-i7-ubuntu:~$ diff -w pipecom pipecom2
1c1
< ps -ef | grep rails
---
> ps -ef | grep rails
2
задан 5 November 2013 в 16:37

1 ответ

Я нашел эту ссылку на французском сайте: http://forum.ubuntu-fr.org/viewtopic.php?id=65282 Теперь мой французский плохой, но эта ссылка также упоминается на форум Arch Linux (и тот на английском языке). Вероятно, это и является причиной вашей ошибки:

В некоторых раскладках клавиатуры введите [AltGr] + символ пробела, который отображается как пробел, но не интерпретируется как таковой оболочкой.

То, что происходит, заключается в том, что, печатая |, вы продолжаете нажимать клавишу [AltGr]. Итак, bash ищет команду [space] grep, которой не существует.

Повторите ввод текста, обращая внимание, или скопируйте и вставьте, оно должно пройти.

Если с вашей проблемой все в порядке, вы сможете настроить клавиатуру, чтобы предотвратить ее. (Система -> Настройки -> Клавиатура -> Макет)

и

Я понял это. Shift + на моей клавиатуре создает пробел. Когда я печатаю '| 'быстро я иногда не отпускаю клавишу Shift достаточно быстро после ввода' | ' и поэтому вместо ввода обычного пробела после '|' Я печатаю пробел.

Anonymous_user, спасибо. Ваш пост был ключом, который мне нужен, чтобы начать думать в правильном направлении.

Джей

Источник

0
ответ дан 5 November 2013 в 16:37

Другие вопросы по тегам:

Похожие вопросы: