Кажется, вам нужны именованные каналы:
https://askubuntu.com/questions/449132/why-use-a-named-pipe-instead-of-a-file
По сути, вы создаете именованный канал, запускаете процесс, который получает входные данные из именованного канала, а затем передаете все, что вы хотите, В именованный канал, чтобы процесс обработал его.
Например:
mkfifo /tmp/namedpipe
tail -f /tmp/namedpipe &
echo "BOO"> /tmp/namedpipe
echo "this" > /tmp/namedpipe
... Это выведет (по хвосту )на стандартный вывод всего, что отправляется в /tmp/namedpipe.
Я использую tail вместо cat, потому что cat завершит процесс, когда получит EOF.
ОБНОВЛЕНИЕ. Уточнение.
Чтобы передать это вашему процессу, вам нужно сделать что-то вроде этого:
tail -f /tmp/namedpipe | yourprocess &
УП2. Итак, в вашем случае последовательность будет такой:
mkfifo /tmp/namedpipe
---это будет точка входа, через которую вы сможете отправлять данные в ваш процесс.
tail -f /tmp/namedpipe | /usr/lib/w3m/w3mimgdisplay &
--это затем создаст постоянный процесс, который вы хотите, и в будущем будет передавать ему все, что вы отправляете через канал.
echo -e '0;1;0;0;0;0;0;0;0;0;file.png\n4;\n3;' > /tmp/namedpipe
Должно показать изображение на экране.
Отныне все, что вы будете отправлять в /tmp/namedpipe, будет похоже на новые строки, отраженные в команде, и также должны появиться на экране.
Я могу получить такие уникальные имена цепочек:
sudo /sbin/iptables -S | grep -P '\-A f2b-.*' | cut -d ' ' -f 2 | sort -u
Как их удалить, не создавая цикл?
[Ответить #1] Удалить все цепочки f2b
/sbin/iptables -S | grep -P '\-A f2b-.*' | cut -d ' ' -f 2 | sort -u | awk '{print "/sbin/iptables -F "$1";"}' #| /bin/sh
[Ответить #2] Удалить все правила f2b
/sbin/iptables -S | grep -P '\-A INPUT.*f2b-.*' | sed 's/^-A //' | awk '{print "/sbin/iptables -D "$0";"}' #| /bin/sh
Примечание. :Раскомментируйте #, когда будете готовы.