我有一个AWK
命令,我想在bash脚本中使用它。我想将AWK
一个大文本文件作为变量。
我试过了:
cat $var | awk 'regex'
echo $var | awk 'regex'
awk 'regex' <<< $var
这三种形式都不起作用。当我在shell awk 'regex' file
中尝试这些命令时,它可以工作。
如何将变量作为输入传递给AWK命令,我不想将文件传递给AWK
。这是否可能。
答案 0 :(得分:0)
您需要引用变量以防止换行符转换为空格:
echo "$var" | awk 'regex'
答案 1 :(得分:0)
试试这个:
$ awk -v awkvar="$var" 'BEGIN{if (awkvar ~ "foobar"){print var}}'
foobar
答案 2 :(得分:0)
你非常接近,这也应该有效:
awk 'regex' <<< "$var"