Экранная команда для буфера

Экранная команда для буфера

Я хочу прочитать содержимое файла в буфер вставки и вывести его на экран. Я сделал так:

screen -X readbuf /home/nitro/file|screen -X writebuf|cat /tmp/screen-exchange

но catкоманда показала мне файл screen-exchange с предыдущим результатом команды readbuf. Если я выполню эти команды по отдельности, то все будет правильно и я получу измененный файл screen-exchange.

Как выполнить все три команды readbuf, writebuf и cat одновременно?

решение1

Эти команды:

screen -X readbuf /home/nitro/file
screen -X writebuf
cat /tmp/screen-exchange

не действуют как части конвейера, но ваша составная команда пытается обращаться с ними таким образом. То есть, каждый шаг не читает стандартный вывод предыдущего шага, поэтому между ними меньше причинно-следственной связи, чем если бы вы ввели

screen -X readbuf /home/nitro/file; screen -X writebuf; cat /tmp/screen-exchange

или

screen -X readbuf /home/nitro/file && screen -X writebuf && cat /tmp/screen-exchange

Связанный контент