centos 下 ls grep head cut简单用法
需求:查看某个目录下文件的近期修改时间。查看/proc目录下的文件,并按时间排序,截取最近修改的前五个文件:
进入到/proc目录
# cd /proc/
查看目录下的全部文件及目录
# ls
1 1676318 234226 2694029 36 4351 58966 756923 bus execdomainskallsyms mdstat sched_debugsysrq-triggerxen
10 1676519 2351260 269413 37 4452 59 67 77 924 cgroups fb kcore meminfo schedstat sysvipc zoneinfo
109167662 2352261 2694230 38 455236 692774926 cmdline filesystemskeys misc scsi timer_list
11 1678520 24 2618 2694331 38174653 60 7 78 928 cpuinfo fs key-users modules self timer_stats
12 1678620138241 2619 2694632 39 4754 61 72 79 930 crypto interrupts kmsg mounts slabinfo tty
13 1678721 243 269042694733 4 4855 62 73 793931 devices iomem kpagecountmtd softirqs uptime
14 1684222 25 2692527 33540 4956 63 7388 933 diskstatsioports kpageflagsnet stat version
15 1685723 2521269382736 34 41 5 57 64 74 896935 dma ipmi loadavg pagetypeinfoswaps vmallocinfo
16 17 2341 25222693928 35 42 5058 65 75 9 buddyinfodriver irq locks partitions sys vmstat
过滤掉目录,截取最近修改的5个文件。
# ls -lut |grep "^-" |head -5
-r--r--r--1 root root 0 Oct 17 11:27 buddyinfo
-r--r--r--1 root root 0 Oct 17 11:27 cgroups
-r--r--r--1 root root 0 Oct 17 11:27 cmdline
-r--r--r--1 root root 0 Oct 17 11:27 cpuinfo
-r--r--r--1 root root 0 Oct 17 11:27 crypto
使用cut命令可以截取显示的多少。(例如:5 就是从第5个字符开始显示)
# ls -lut |grep "^-" |head -5 |cut -c5-
r--r--1 root root 0 Oct 17 11:28 cgroups
r--r--1 root root 0 Oct 17 11:28 execdomains
r--r--1 root root 0 Oct 17 11:28 fb
r--r--1 root root 0 Oct 17 11:28 iomem
r--r--1 root root 0 Oct 17 11:28 ioports
#
ls -t 根据文件的修改时间进行排序
ls -u 可以显示出文件的最后访问时间,并让-t基于访问时间来排序
^- 是一个正则表达式,以横杠开头,这里表示普通文件
cut -c 指定了cut命令保留并输出那些字符
下面是通过横杠-指定范围,还可以使用逗号,指定范围
范围描述
N 第N个字符
N-从第N个字符一直到当前行结束
N-M 从第N个字符一直到第M个字符
-M从第一个字符一直到第M个字符
页:
[1]