0

我不断运行等待输入并每 15 秒将“等待输入”打印到标准输出的脚本。我需要在脚本运行时模拟在标准输入中粘贴 IP 地址列表的操作。例如,我需要手动执行以下步骤:复制下面的列表,包括最后一个列表元素之后的新行并将其直接粘贴到标准输入中。

127.0.0.1
127.0.0.2
127.0.0.3

我尝试使用文件中的管道和重定向(同时使用 \n 和 \r)但没有成功

echo "127.0.0.1\n127.0.0.2\n" | script

或者

script < file

其中文件包含相同的 IP 地址。有什么建议么?

4

2 回答 2

2

使用先进先出!

mkfifo /path/to/tmp.fifo
tail -f /path/to/tmp.fifo | script

现在,每当您向 fifo 发送某些东西(从另一个 TTY,从一个进程,等等)时,就好像您输入了等待脚本一样,例如

echo "127.0.0.1" >> /path/to/tmp.fifo
于 2012-06-11T13:21:55.223 回答
0

使用 cat. 如果你执行:

cat | script

您可以剪切-n-粘贴或输入 tty。

于 2012-06-11T15:25:27.400 回答