我有以下代码:
while ...
echo -n "some text"
done | while read; do
echo "$REPLY" >> file
done
Run Code Online (Sandbox Code Playgroud)
但echo只在没有"-n"标志的情况下使用.看起来像使用-n时,输出不会被下一个while循环刷新/读取
即使未遵循EOL,我怎样才能确保读取"某些文本"?
小智 1
解决方法是(按照原始示例):
while ...
echo -n "some text"
done | (cat && echo) | while read; do
echo "$REPLY" >> file
done
Run Code Online (Sandbox Code Playgroud)
这会将 EOL 附加到测试流并允许read读取它。副作用是流结束时会出现额外的 EOL。