如果第二列中的数字(以空格分隔)大于3,那么保持线路的最佳方法是什么?
我不能使用awk或sed! -.-
输入:
1 4 sdf 234sd
1 10 uio 654iu
输出:
ProgrammingLanguage
答案 0 :(得分:3)
使用while
循环:
while read -r i j k; do [ "$j" -gt 3 ] && echo "$i $j $k"; done <file.txt
答案 1 :(得分:2)
使用grep
过滤掉不需要的要求
$ cat file
2 2 asd 132ds
1 4 sdf 234sd
1 3 gfd 654gh
1 1 rtz 543jh
1 10 uio 654iu
$ egrep -v '^[^.]+ [1-3] ' file
1 4 sdf 234sd
1 10 uio 654iu
答案 2 :(得分:1)
使用while循环
while read line; do if [ $(echo $line|cut -d " " -f2) -gt 3 ]; then echo $line; fi; done < testfile.txt