Скажімо, у мене є сценарій, який я хочу передати в іншу команду або перенаправити у файл ( sh
переглядаючи приклади). Припустимо, що я використовую bash.
Я можу це зробити, використовуючи echo
:
echo "touch somefile
echo foo > somefile" | sh
Я також міг би зробити майже те саме, використовуючи cat
:
cat << EOF
touch somefile
echo foo > somefile
EOF
Але якщо я заміню "EOF" на "EOF | sh", він просто вважає, що це частина гередока.
Як я можу зробити так, що cat
виводить текст зі stdin, а потім передає його у довільне місце?
echo
- мені було цікаво, який еквівалент цього буде використовувати cat
.
sh
сценарію з декількох рядків і передавання його безпосередньо до sh
. Я знайшов, що ваш Q шукає передачу текстового виводу з декількох команд, включаючи документ ТУТ, безпосередньо до команди. Що і є другим прикладом відповіді Еша.
touch
хіба що там, чого саме ти хочеш? просто читати вхідний файл і перенаправляти на інший за допомогою stdout?