awk顯示指定行到末尾行之間小技巧

2021-09-10 07:08:30 字數 501 閱讀 3594

使用awk來顯示全部行,可以使用print $0來搞定,如果碰到要顯示從第二行到第末尾的話,比如要顯示/etc/passwd檔案中,從第二列到第末尾的所有行,可以

[root@localhost ~]# cat /etc/passwd | awk -f: 'print $2, $3, $4, $5, $6, $7'
上面的是因為我們知道/etc/passwd就只有7行,可以一行行列出,如果是未知行,或者行數比較多的話,這樣寫顯然不方便。 這個時候就有個小技巧,讓第一列設定為空,這樣的話,顯示所有$0,就不會包含第一列了,而且又不必一行行列出所有列

[root@localhost ~]# cat /etc/passwd | awk -f: ''

# $1="" 將第一列預設設定為空

# sub(' ', '') 將第一行空出來的空格去掉

# print 等價於print $0

awk指定列修改

遇到個處理文字檔案的問題 cat test.txt 355356 1700870 1 0202 355356 1700871 2 02046 355356 1700870 2 02046 1700870 1700873 1 0202 把第2列是1700870的資料改為1700888 起初我得想法是直...

awk中刪除重複行

在awk中,可以用!a 0 做為條件,對重複出現的行進行處理。bash 3.2 cat 2 abcabc ef123 dgag 123 bash 3.2 awk a 0 2 abcef 123dgag 對於awk a 3 需要了解3個知識點 1 awk陣列知識,不說了 2 awk的基本命令格式 aw...

awk之FS的指定

awk之fs的指定 file fan1 11h ok 160.96 11139 rpm fan2 12h ok 160.96 rpm fan3 13h ok 160.96 10763 rpm fan4 14h ok 160.96 10998 rpm fan5 15h ok 160.96 11515 ...