我是BASH的新手,我正在尝试使用awk根据文本文件的第4列过滤掉第1列数据.如果第4列数据与x的范围匹配,那么它将输出第1列数据."x"被认为是1-10(1,2,3..10)的数字范围.
awk -F: '{ if($4=="x") print $1}' filename.txt
filename.txt
sample1 0 0 4
sample2 0 0 10
sample3 0 0 15
sample4 0 0 20
Run Code Online (Sandbox Code Playgroud)
实际使用:
awk -F: '{ if($4=="1-10") print $1}' sample.txt
output = sample1, sample2, sample3, sample4
Run Code Online (Sandbox Code Playgroud)
应该是:sample1 sample2只有.
语法中是否有错误,我没有看到,或者我可能使用这种语法完全错误?