awk用法 取列表最後一列

2021-09-21 09:42:38 字數 2699 閱讀 1467

很多時候我們有需要取出文字中的最後一列,或者比如 ls -l 最後一列為檔名,這裡可以使用多種方法取出最後一列;

舉例說明:

[root@testserver tmp]# ls -l

總用量 1000

-rw-r--r-- 1 root  root  925223 6月  15 18:06 0615.txt

-rw-r--r-- 1 root  root      84 6月  15 15:07 dir.txt

-rw-r--r-- 1 root  root      86 6月  14 12:00 for.sh

-rw-r--r-- 1 root  root     715 6月  14 12:09 g.txt

-rw-r--r-- 1 root  root    1614 6月  14 12:07 m.txt

-rw-r--r-- 1 root  root   37763 6月  14 12:00 size.txt

-rw-r--r-- 1 root  root   35579 6月  14 11:51 test.txt

方法1:

直接使用awk $nf取最後一列,問題來了,注意取出來的第一行,包括ls -l 顯示的第一行總用量 1000這個數值;

1

2

3

4

5

6

7

8

9

[root@testserver tmp]# ls -l|awk ''

1000

0615.txt

dir.txt

for.sh

g.txt

m.txt

size.txt

test.txt

方法2:

同樣awk $nf,加乙個條件nr>1,跳過第一行

1

2

3

4

5

6

7

8

[root@testserver tmp]# ls -l|awk 'nr>1 '

0615.txt

dir.txt

for.sh

g.txt

m.txt

size.txt

test.txt

方法3:

使用awk next函式,nr==1 跳過第一行

1

2

3

4

5

6

7

8

[root@testserver tmp]# ls -l|awk 'nr==1  '

0615.txt

dir.txt

for.sh

g.txt

m.txt

size.txt

test.txt

方法4:

可以寫乙個for迴圈,並定向到乙個檔案中

可以使用for迴圈取檔案列表 

for i in `ls`;do echo $i>>dir.txt;done;

1

2

3

4

5

6

7

8

[root@testserver tmp]# cat dir.txt

0615.txt

dir.txt

for.sh

g.txt

m.txt

size.txt

test.txt

awk取文字列 awk用法 取列表最後一列

很多時候我們有需要取出文字中的最後一列,或者比如 ls l 最後一列為檔名,這裡可以使用多種方法取出最後一列 舉例說明 root testserver tmp ls l 總用量 1000 rw r r 1 root root 925223 6月 15 18 06 0615.txt rw r r 1 ...

mysql返回最後一列資料

獲取mysql的表中每個userid最後一條記錄的方法,並且針對userid不唯一的情況,需要的朋友可以參考下 表結構create table t1 userid int 11 default null,atime datetime default null,key idx userid useri...

DataFrame各列對應除以最後一列

問題 現欲將dataframe的每列對應除以乙個series,即dataframe第一行行的每個元素,除以series的第乙個值,以此類推,欲採用dataframe.div 由於索引不照出現nan 解決辦法 先將二者合在一起,pd.concat 再通過迴圈做到,具體如下 data 11 pd.con...