文本操作 (ls,grep,head,cut)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文本操作 (ls,grep,head,cut)相关的知识,希望对你有一定的参考价值。
需求从一个目录中取出最近访问过的5个普通文件,并且要求输出文件名和最后的访问时间
解决方案
通过ls -t和-u根据文件的访问时间进行排序,用|grep过滤出普通文件,在用head过滤出文件列表的前五行,最后用cut剪切无关的数据,只保留访问时间和文件名
[[email protected] proc]# ls -lut |grep "^-" |head -5 |cut -c41-
运行结果
[[email protected] proc]# ls -lut |grep "^-" |head -5 |cut -c41-
0 Mar 21 10:44 buddyinfo
0 Mar 21 10:44 cgroups
0 Mar 21 10:44 cmdline
0 Mar 21 10:44 consoles
0 Mar 21 10:44 cpuinfo
讨论
- ls -t 根据文件的修改时间进行排序
- ls -u可以显示出文件的最后访问时间,并让-t基于访问时间来排序
- ^-是一个正则表达式,以横杠开头,这里表示普通文件
- cut -c 指定了cut命令保留并输出那些字符
- 下面是通过横杠-指定范围,还可以使用逗号,指定范围
范围 | 描述 |
---|---|
N | 第N个字符 |
N- | 从第N个字符一直到当前行结束 |
N-M | 从第N个字符一直到第M个字符 |
-M | 从第一个字符一直到第M个字符 |
以上是关于文本操作 (ls,grep,head,cut)的主要内容,如果未能解决你的问题,请参考以下文章