awk如何取最后一列


想查到某个目录下全部以sd_sensor_xxxx.log等文件中,末了一个序号文件的序号。

 delphi脚本网

也就是,要把xxxx掏出来。

解决办法:

1. 起首要取到全部sd_sensor_xxxx.log文件中的末了一行文件,该文件代表了最大的序号;

 

ls -l sd_*.log | sed -n '$p'

当前目录有如下文件:

 

 

[root@Real6410 sdcard]# ls
hello               sd_sensor_0000.log  sd_sensor_0002.log  test.txt


使用命令之后:

 

 

[root@Real6410 sdcard]# ls -l sd*.log | sed -n '$p'                   
-rwxrwxrwx    1 root     root            0 Dec  6 01:29 sd_sensor_0002.log


2. 使用awk取到上述显示内容的末了一列不需要具体数sd_sensor_0002.log排在第几列。命令:

 

 

[root@Real6410 sdcard]# ls -l sd*.log | sed -n '$p'| awk '{print $NF}'
sd_sensor_0002.log


3. 再次使用awk加切分符号将0002分离出来。命令:

 

 

ls -l sd*.log | sed -n '$p'| awk '{print $NF}' | awk -F '.' '{print $1}' | awk -F '_' '{print $NF}'

使用命令结果:

 

 

[root@Real6410 sdcard]# ls -l sd*.log | sed -n '$p'| awk '{print $NF}' | awk -F '.' '{print $1}' | awk -F '_' '{print $NF}'
0002

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM