我想在 Bash 脚本中进行大量过滤,以使我的过滤命令更短一些:
#before:
$ cat unreadable.log | grep "bla" |[...]| sed "s/blubb//" >>readable.log
#after:
$ cat unreadable.log | the_script_I_m_writing.sh >>readable.log
但是如何正确处理 bash 脚本中的 IO,该after
行可以如图所示执行?正如您在 bash 脚本中看到的那样,将有很多简单的命令通过管道连接在一起。所有这些管道都应该开始stdin
并将最终结果发送到stdout
.