Digamos que eu tenho um script que quero canalizar para outro comando ou redirecionar para um arquivo (canalizando sh
para os exemplos). Suponha que eu estou usando o bash.
Eu poderia fazer isso usando echo
:
echo "touch somefile
echo foo > somefile" | sh
Eu também poderia fazer quase a mesma coisa usando cat
:
cat << EOF
touch somefile
echo foo > somefile
EOF
Porém, se eu substituir "EOF" por "EOF | sh", ele simplesmente achará parte do heredoc.
Como posso fazer com que o cat
texto saia do stdin e o direcione para um local arbitrário?
echo
- eu estava pensando qual seria o equivalente disso cat
.
sh
script com várias strings e passá-lo diretamente para sh
. Encontrei o seu Q procurando passar a saída de texto de vários comandos, incluindo um documento HERE, diretamente para um comando. Qual é o que o segundo exemplo da resposta de Ash faz.
touch
existe, a menos que exista, o que exatamente você quer? é apenas ler o arquivo de entrada e redirecionar para outro com stdout?