Bash 从标准输入读取后如何等待?

Bash 从标准输入读取后如何等待?,bash,Bash,如果我做了类似的事情 cat myfile | myreader cat将以尽可能快的速度逐行发送myfile内容到标准输出 我想一行一行地发送文件内容,但每行之后都要“睡眠”。 你们当中有人知道怎么做吗 我知道可以在myreader中等待,但这不是问题所在。不可能总是修改程序读取标准输入,或者我不希望这样做。您可以这样做: $ cat myfile|while read line; do echo $line; sleep 1; done|./myreader 您可以让awk在两行之间插入暂

如果我做了类似的事情
cat myfile | myreader

cat将以尽可能快的速度逐行发送myfile内容到标准输出

我想一行一行地发送文件内容,但每行之后都要“睡眠”。

你们当中有人知道怎么做吗

我知道可以在myreader中等待,但这不是问题所在。不可能总是修改程序读取标准输入,或者我不希望这样做。

您可以这样做:

$ cat myfile|while read line; do echo $line; sleep 1; done|./myreader

您可以让awk在两行之间插入暂停:

cat myfile | awk '{print $0;system("sleep 2")}' | myreader
或者更好(为了避免UUOC):


这可以通过以下方式实现:

while read line
do
    echo "$line"
done <<< myfile | ./myreader
读取行时
做
回音“$line”

读取时完成或仅
cat myfile | r;做回显“$REPLY”;睡眠1;完成| myreader
。或者更好:
读-r时;做回显“$REPLY”;睡眠1;完成
,以避免无用地使用cat。
while read line
do
    echo "$line"
done <<< myfile | ./myreader