标签:roo 结束 XA 读取 提示 演示 mode st3 执行
关于find命令的用法:
1.首先熟知三个time:
atime:文件被访问/读取时更新的时间
ctime:文件属性或权限被更改时更新的时间
mtime:文件内容被修改时更新的时间
关于这三个时间,mtime被更新时,ctime一定会被更新;这是因为mtime被更新时,元数据一定会发生变化,大小也会发生改变,属性也就被改变了
【用命令stat + 文件/目录可以查看三个时间】
2.格式:find [PATH] [option] [action]
参数:
a) –mtime n:n天之前的“一天之内”被更改过的文件
b) –mtime +n:n天之前(不包括n天)被更改过的文件
c) –mtime –n:n天之内(包括n天)被更改过的文件
d) –newer file:file是一个存在的文件夹,列出比file还要新的文件名
a) –name filename:查找指定目录下名称为filename的文件
b) –type TYPE: 查找指定目录下类型为TYPE的文件
c) –size [+-]SIZE:查看比SIZE还大(+)/小(-)的文件
d) –perm mode:查看文件权限(用数字表示)刚好等于mode的文件
e) –perm –mode:查看文件权限包括mode的文件(即一个文件权限为0744的文件,使用-perm -0744,4755权限的文件也会被列出来)
f) –perm +mode:查看包含mode里面任意权限的文件(即一个文件权限为-rwxr-xr-的文件,使用-perm +755,-rw-------权限的文件也会被列出来)
【值得注意的是,find命令会查找子目录,不仅仅局限于当前目录】
3.find与xargs命令结合:
find … … |xargs
+ 命令:默认把find搜索到的文件/目录呈现称为一行,用空格隔开,如下:
[root@learning tmp]# find /tmp/ -mtime
-1 -type f | xargs
/tmp/test1 /tmp/test2 /tmp/test4 /tmp/test3
用几个例子来演示一下:
[root@learning tmp]# find
/tmp/ -mtime -1 -type f | xargs rm –f
(把find搜索到的文件列出来,执行rm命令)
[root@learning test]# find /tmp/ -mtime -1 -type f | xargs -i mv {} {}.txt
[root@learning test]# ls
test1.txt test2.txt test3.txt test4.txt
(把find搜索到的文件改名为.txt格)
(-i的作用:把过滤出来的文件一个一个的进行操作;如果不加+i,则会变成
mv test1 test2
test3 test4…,test4不是文件不能进行操作
)
标签:roo 结束 XA 读取 提示 演示 mode st3 执行
原文地址:https://www.cnblogs.com/xqr2018/p/8877230.html