目录
一、Find查找文件或目录
find命令是linux中查找文件的命令
语法格式:find 【文件路径】 【参数】
在不加任何参数的时候find命令会查看当前目录文件内容:
我们也搭配一些参数,来查找我们需要的特定的文件:
-name | 按名称来查找 |
-type | 按文件类型查找 |
-size | 按文件大小来查找 |
-user | 按文件属主来查找 |
1.1、 案例:
按文件名称查找:-name
按文件类型来查找:
文件类型种类(f:普通文件 d:目录文件 b:块文件 l:链接文件 p:管道文件 s:套接字文件 )
按文件名称来查找:
等等,按照这种方式根据自己需求来进行查找
按文件创建,修改等来查找
xargs 可以和管道配合
find ./ -maxdepth 1 -type f -print0 | xargs -0 ls -lh
-atime -- 访问时间 Linux中日志放在/var/log sylog
-mtime -- 文件内容修改时间
-ctime -- 文件属性修改时间
ctime ##以天为单位
cmin ##以分钟为单位
1.2、利用find和管道将所需要的数据复制到另一个目录下
案例1:
cd /opt
touch {1..3}.log
然后使用find
find /opt -name “*.log” |xargs -i cp {} /mnt
案例2:
cd opt
mkdir {A..C}
使用find和管道
find /opt -type d -name "[A-C]" -cmin -10 |xargs -i cp -R {} /mnt
二、exec解释:
-exec 参数后跟的是command命令,它的终止是以;(分号)来结束,所以这句话命令后面的分号是必不可少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠 "\"
使用find时,只要把想要的操作写在一个文件里,就可以用exec来配合find查找,很方便的。在有些操作系统中只允许-exec选项执行诸如l s或ls -l这样的命令。大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{ },一个空格和一个\,最后是一个分号。为了使用exec选项,必须要同时使用print选项。如果验证一下find命令,会发现该命令只输出从当前路径起的相对路径及文件名。 使用查找时,只要把想要的操作写在一个文件里,就可以用高管来配合找到查找,很方便的。在有些操作系统中只允许-选项执行诸如l s或ls-l这样的命令.大多数用户使用这一选项是为了查找旧文件并删除它们.建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件.主管选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个\,最后是一个分号.为了使用执行选项,必须要同时使用打印选项。如果验证一下找到命令,会发现该命令只输出从当前路径起的相对路径及文件名。
案例: