博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
awk用法:取列表最后一列
阅读量:7106 次
发布时间:2019-06-28

本文共 1214 字,大约阅读时间需要 4 分钟。

很多时候我们有需要取出文本中的最后一列,或者比如 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 '{print $NF}'
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 {print $NF}'
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 {next} {print $NF}'
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

本文转自 模范生 51CTO博客,原文链接:http://blog.51cto.com/mofansheng/1789910,如需转载请自行联系原作者

你可能感兴趣的文章
layoutSubviews总结
查看>>
Lintcode93 Balanced Binary Tree solution 题解
查看>>
用Python从零开始创建区块链
查看>>
企业应当建立安全保障机制,以随时应对各种***事件
查看>>
校验左右括号是否匹配,包含数量和左右括号是否匹配
查看>>
DNS地址解析
查看>>
阿里云数据库MySQL版快速上手!
查看>>
机械加工行业成功实施erp系统的案例有哪些?
查看>>
C语言与GLSL语言中struct的差别
查看>>
python爬虫从入门到放弃(二)- 爬虫的深层原理
查看>>
短信通信笔记
查看>>
谷歌安全浏览API出问题
查看>>
学习经验
查看>>
ios 推送证书制作成P12格式
查看>>
微信自定义分享卡片链接的解决方案(可自定义标题 描述 缩列图)
查看>>
SELECT ... INTO OUTFILE中面临的secure_file_priv问题
查看>>
思科设备实现私网之间通信gre***—P-T-P实战
查看>>
基于Kubernetes构建企业容器云【入门实战篇】- 系统环境初始化 (一)
查看>>
乾颐堂安德HCIE面试真题系列21(鲁子C)
查看>>
[iOS]关闭/收起虚拟键盘的若干方法
查看>>