Очень часто на моем Mac, когда я использую символ трубы (|), за которым следует символ пробела, между ними вставляется невидимый символ.
Это особенно раздражает при использовании терминала, поскольку делает команды недействительными.
Если я набираю следующее в iterm2, я часто получаю следующее:
ls | cat
zsh: command not found: cat
Если я нажму клавишу со стрелкой вверх, чтобы получить мою предыдущую команду, а затем удалите и снова вставьте пробел между |
и cat
, команда будет работать.
Когда я копирую, вставляю рабочие и нерабочие команды в файл, например так:
non-working: ls | cat
working: ls | cat
и откройте его в Hex Fiend, оно показывает следующее:
non-working: ls | cat
working: ls | cat
Я также сталкивался с такой же проблемой в SublimeText2, используя квадратные скобки ([ ]), за которыми следовал пробел. Так что я не считаю, что это проблема с iTerm2.