Я параноик по этому поводу, но, надеюсь, это простой вопрос:
Есть ли разница между
cat file1 | egrep -oP "[Mm]y string" > /home/user/file.txt
а также
cat file1|egrep -oP "[Mm]y string">/home/user/file.txt
то есть имеет ли значение, если у меня есть пробелы, заполняющие символы канала (|) и перенаправления (>)? Я действительно параноик, что наличие пробелов в них, так или иначе, попадет в выходной файл, когда я этого не хочу. Кто-нибудь может уточнить? (Использование Ubuntu 12 / bash, если это имеет значение.)
shell
command-line
shell-script
Магнус
источник
источник
|
или>
последующего вводаCtrl-W
для удаления предыдущего «слова» удалялось бы больше, чем вы, вероятно, хотели. то же самое для курсора-движения нажатия клавиш , какEsc-f
иEsc-b
т.д.Ответы:
В командной строке оболочки пробелы без кавычек служат только для разделения слов во время синтаксического анализа команд. Они не передаются ни в аргументах, которые видит команда, ни в стандартном потоке ввода.
источник