例如,我如何执行使用 awk 在标准输出上打印的命令,我使用 awk 将其打印出来:
grep -B100 some file1.tcl
grep -B100 some file2.tcl
Run Code Online (Sandbox Code Playgroud)
然后将其存储在 .sh 文件中,然后获取该文件。是否可以将其通过管道传输到某个地方以便执行命令?
awk '{print xx}' | pipeline
Run Code Online (Sandbox Code Playgroud)
只需将它们通过管道传输到您的外壳:
$ printf 'echo foo\necho bar\n' | bash
foo
bar
Run Code Online (Sandbox Code Playgroud)
对于比简单命令(当然也是简单命令)更高级的任何东西:
eval "$( awk ... )"
Run Code Online (Sandbox Code Playgroud)
这将在当前 shell 的环境中运行代码,因此代码也可以在你的 shell 中设置 och modify 变量。
不过,既然你显然想利用来解析其他文件grep,为什么不这样做即用相同的awk程序?...或者使用另一个awk读取模式和文件名的程序?