linux shell中利用列數篩選數據


1、測試數據,依據列數篩選數據

root@PC1:/home/test# ls
test.txt
root@PC1:/home/test# cat test.txt  ## 測試數據 2 3 4 3 d
a 3 d
d w e f
z v e
z c g k e q
z v b d
root@PC1:/home/test# awk 'NF == 3' test.txt   ## 篩選test.txt中列數為3的數據
a 3 d
z v e
root@PC1:/home/test# awk 'NF == 4' test.txt    ## 篩選test.txt中列數為4的數據
d w e f
z v b d
root@PC1:/home/test# awk 'NF == 5' test.txt
2 3 4 3 d
root@PC1:/home/test# awk 'NF == 6' test.txt
z c g k e q

 

2、

root@PC1:/home/test# cat test.txt
2 3 4 3 d
a 3 d
d w e f
z v e
z c g k e q
z v b d
root@PC1:/home/test# awk '{if(gsub(/ /, "&") == 3 - 1) print $0}' test.txt ## 提取列數為3的行
a 3 d
z v e
root@PC1:/home/test# awk '{if(gsub(/ /, "&") == 4 - 1) print $0}' test.txt
d w e f
z v b d
root@PC1:/home/test# awk '{if(gsub(/ /, "&") == 5 - 1) print $0}' test.txt
2 3 4 3 d

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM