Estou paranóico com isso, mas espero que seja uma pergunta simples:
Existe alguma diferença entre
cat file1 | egrep -oP "[Mm]y string" > /home/user/file.txt
e
cat file1|egrep -oP "[Mm]y string">/home/user/file.txt
ou seja, importa se tenho espaços preenchendo os caracteres pipe (|) e redirecionamento (>)? Estou realmente paranóico que, tendo espaços lá, os espaços de alguma forma acabam no arquivo de saída quando não quero isso. Alguém pode esclarecer? (Usando o Ubuntu 12 / bash, se isso interessar.)
shell
command-line
shell-script
Magnus
fonte
fonte
|
ou>
digitandoCtrl-W
para excluir a "palavra" anterior, isso excluiria mais do que você provavelmente desejava. idem para cursor do movimento teclas comoEsc-f
eEsc-b
etcRespostas:
Na linha de comando do shell, os espaços não citados servem apenas para delimitar palavras durante a análise de comandos. Eles não são transmitidos, nem nos argumentos que o comando vê, nem no fluxo de entrada padrão.
fonte