我正在尝试搜索模式,从结果中我只提取第二列。该命令在命令行中运行良好,但不在bash脚本中。
#!/bin/bash
set a = grep 'NM_033356' test.txt | awk '{ print $2 }'
echo $a
它根本不打印任何输出。
输入
NM_033356 2
NM_033356 5
NM_033356 7
答案 0 :(得分:1)
.......
a="$(awk '/NM_033356/ { print $2 }' test.txt)"
答案 1 :(得分:1)
您的代码:
#!/bin/bash
set a = grep 'NM_033356' test.txt | awk '{ print $2 }'
echo $a
将其更改为:
#!/bin/bash
a="$(awk '$1=="NM_033356"{ print $2 }' test.txt)"
echo "$a"
代码更改取决于您的示例输入。
答案 2 :(得分:0)
试试这个:
a=`grep 'NM_033356' test.txt | awk '{ print $2 }'`