高级编程技巧与 gawk 特性深度解析
1. shell 脚本与命令替换
在 shell 编程中,有一种操作是将 shell 脚本到标记处的内容作为输入传递给命令。shell 会对 here 文档的内容进行变量和命令替换(可能还会有其他操作,具体取决于 shell)。
1.1 命令替换
$(…) 这种 shell 结构被称为命令替换。括号内命令的输出会被替换到命令行中。由于结果用于变量赋值,即使结果包含空格,也会被保存为一个字符串。
1.2 扩展程序的处理步骤
以下是将扩展程序保存到 processed_program 变量的步骤:
1. 运行 gawk ,使用 @include 处理程序( expand_prog shell 变量的值)读取标准输入。
2. 标准输入是用户程序的内容,来自 program shell 变量。通过 here 文档将其内容传递给 gawk 。
3. 使用命令替换将处理结果保存到 processed_program shell 变量中。
1.3 调用 gawk
最后一步是使用扩展后的程序,以及用户提供的原始选项和命令行参数来调用 gawk :
eval gawk $opts—'"$proce
超级会员免费看
订阅专栏 解锁全文
2

被折叠的 条评论
为什么被折叠?



