我实际上想要将FS初始化为“=”并将第二个字段存储在某个文本文件中。我为它编写了一个shell脚本。这里BASH正在考虑$ 2引用输入文本文件中的第二个字段$ 1表示输入文本文件的名称.bash如何区分AWk参数和shell参数?
THIs是shellcript,它有效!!
awk 'BEGIN{FS="=";}{print $2 >> "a.txt"}' $1
exit
答案 0 :(得分:0)
单引号之间的整个字符串将逐字传递给awk
。由于$1
不在单引号之间,bash
会解释它并替换第一个参数的值。
(顺便说一句,总是对变量使用双引号是一种很好的做法,如"$1"
中所示。否则,如果$1
中有空格,它将扩展为多个单词。)< / p>