如果我这样做的话
cat myfile | myreader
cat将逐行发送 myfile 内容,尽可能快地发送到标准输出。
我想逐行发送文件内容,但是在每行之后“休眠”一段时间。
你们有谁知道如何做到这一点?
我知道可以在 myreader 中等待,但这不是问题。并不总是可以修改程序读取标准输入,或者在我的情况下是不可取的。
答案 0 :(得分:2)
你可以这样做:
$ cat myfile|while read line; do echo $line; sleep 1; done|./myreader
答案 1 :(得分:0)
你可以让awk在行之间插入一个暂停:
cat myfile | awk '{print $0;system("sleep 2")}' | myreader
或更好(避免UUOC):
awk '{print $0;system("sleep 2")}' myfile | myreader
答案 2 :(得分:0)
这可以通过以下方式完成:
while read line
do
echo "$line"
done <<< myfile | ./myreader
但是,你为什么要这样呢?闻起来好像你想使用script
或类似的东西。