awk是否支持使用与'in print不同的分隔符?例如,而不是awk '{print $1}'像awk -d # #{print $1}#
我实际上是在查看C源代码,这是一个非常短的程序; 是否有允许的替代版本?
它不能:'不传递给awk; 相反,它本身就是shell的理解.因此,当您运行时awk '{print $1}',您在操作系统级别实际调用的内容类似于:
/* this is C syntax, so the double-quotes are C quotes; only their contents are literal */
execvp("awk", { "awk", "{print $1}", NUL });
Run Code Online (Sandbox Code Playgroud)
值得注意的是,单引号根本就不存在了 - 它们被shell解析出来时它们将它们理解为如何将命令分解为参数列表的指令.