find是Linux系统中的一个强大的命令,通过它我们可以找到空文件,然后将它们进行删除。 TL;DR 最终命令如下: find ....-size 0 # 寻找当前目录下小于512字节的文件或目录 find . -size -1 # 寻找当前目录下大于1字节的文件或目录 find ....-size +1c # 寻找当前目录下大于1M的文件或目录 find . -size +1M 有了这个选项,就能很容易地过滤出当前目录下的空文件了: find ....-type f -size 0 另一个选项是-delete,它的作用是直接删除找到的文件。 还有一个选项是-print,即打印匹配的文件路径到标准输出。...结合这几个选项,我们就能删除当前目录下的所有空文件,并且在删除时打印文件名: find . -type f -size 0 -print -delete
示例:需要删除当前目录中名字为test打头的文件进行删除操作 使用-delete参数 find . -type f -name 'test*' -delete 使用xargs参数 find ....-type f -name 'test*' | xargs rm -rf 使用-exec参数 find . -type f -name 'test*' -exec rm -rf {} \;
示例:需要删除当前目录中名字为test打头的文件进行删除操作 使用-delete参数 find . -type f -name 'test*' -delete 使用xargs参数 find ....-type f -name 'test*' | xargs rm -rf 使用-exec参数 find .
查找当前目录下,24小时内更改过的文件,并进行删除操作(慎用!!!,删除没有提示) 3. 查找当前目录下文件名以.log结尾且24小时内更改过的文件,并进行安全删除操作(即删除前会进行询问) 4....查找当前目录下的以.log结尾的文件或目录,并移动到test目录下 find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了...大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。...,删除没有提示) 命令: find -type f -mtime -1 -exec rm {} \; 输出: [root@localhost home]# ll total 0 -rw-r--r--....查找当前目录下文件名以.log结尾且24小时内更改过的文件,并进行安全删除操作(即删除前会进行询问) 命令: find -name "*.log" -type f -mtime -1 -ok rm
find 命令在linux中是很常用到的一个查找命令,它的功能非常地强大。... #查位于某一类型文件系统中的文件,这些文件系统类型通常可 在/etc/fstab中找到 -prune #忽略某个目录...-type f -exec grep “the string you want find…” {} ; -print 从根目录开始查tmpfile,一旦查到马上删除 find / -name "tmpfile...删除指定日期的文件 find ./ -name 文件名 -exec rm -f {} \; 例:删除当前30天内没用过的文件,用如下命令: find / -atime +30 -exec rm -f {...参考推荐: Linux下which、whereis、locate、find 区别 Linux中find常见用法示例 Linux xargs命令(推荐)
linux的find 命令功能很强大,以下只是列举在删除文件操作的用法示例。 对于空文件夹和文件,执行find命令时指定 -delete 参数就可以直接删除 批量删除空文件夹 find ....-type d -empty -delete -type d 指定过滤文件类型为direcory的条目 -empty 参数用于过滤出空文件夹 批量删除文件 find ....来指定文件名 对于非空文件夹要用到find命令的-exec参数调用rm命令来删除 批量强制删除文件夹 find ....find . \( -name target -o -name bin \) -type d -exec rm -fr "{}" \; 批量删除 target,bin文件夹 这里用到了find的复合条件判断...,意思就是要求文件夹名字为target或bin, -o 代表逻辑运算OR '\('和'\)'是用转义符将()传递给find,避免脚本解释器(shell)自作主张翻译 这样find才能正确收到完整有效的命令参数
Linux 命令 find 命令解析 Linux 命令 find 是一种查找文件和目录的工具,可以通过文件类型、日期、大小等属性来查找符合要求的文件。...find 的一般形式如下: find [path] [option] [action] 其中,参数 path 表示要查找的目录,option 表示查找的选项,action 表示对查找到的文件要执行的操作...为方便读者理解,林一写个具体的 demo: find /data/logs -name "access.log*" -type f -mtime -7 -exec cp {} /backup/ ; 解析...Linux 命令 find 命令注意事项 find 命令搜索文件或目录是从给定的路径开始向下递归,找到所有符合条件的文件或目录: -exec选项后面的命令必须以;结尾表示命令结束; -prune选项表示不进入指定的目录查找文件...,可提高查找效率; -regex选项可以使用正则表达式查找文件; find 命令的属性条件可以使用-mtime、-atime和-ctime,分别表示文件的修改时间、访问时间和修改权限的时间。
查找符合指定之群组识别码的文件或目录; -group:查找符合指定之群组名称的文件或目录; -help或——help:在线帮助; -ilname:此参数的效果和指定“-lname”参数类似,但忽略字符大小写的差别...; -iname:此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别; -inum:查找符合指定的inode编号的文件或目录; -ipath:此参数的效果和指定...“-path”参数类似,但忽略字符大小写的差别; -iregex:此参数的效果和指定“-regexe”参数类似,但忽略字符大小写的差别; -links:查找符合指定的硬连接数目的文件或目录...100M -size -500M 查找系统中文件大于500M的文件,并删除 > find / -type f -size +500M -delete 或 > find / -type f -size +...查找系统中的空文件 > find / -empty -type f 原文链接:https://rumenz.com/rumenbiji/linux-find.html 微信公众号:入门小站
exec的问题 参数太长 在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行。...这就是xargs命令的用处所在,特别是与find命令一起使用。 find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。...查询当前目录下所有权限是777的文件 > find . -perm 777 | xargs ls -al 查询当前目录下所有的.txt文件,并输出到指定文件a.log(没有换行) > find ....查询当前目录下所有的.txt文件,并输出到指定文件b.log(有换行) > find ....原文链接:https://rumenz.com/rumenbiji/linux-find-xargs.html
-type f -name "*.txt" -exec ls -l {} \; 查找当前目录下内容修改时间是30天以前的.log文件并删除 > find ....查找当前目录下内容修改时间是30天以前的.log文件并删除,删除前给出提示 > find ....-type f -name "*.log" -mtime +30 -ok rm {} \; 在上面的例子中, find命令在当前目录中查找所有文件名以.log结尾、更改时间在30日以上的文件,并删除它们...按y键删除文件,按n键不删除。.../rumenz \; 原文链接:https://rumenz.com/rumenbiji/linux-find-exec.html
查找符合指定之群组识别码的文件或目录; -group:查找符合指定之群组名称的文件或目录; -help或——help:在线帮助; -ilname:此参数的效果和指定“-lname”参数类似,但忽略字符大小写的差别...; -iname:此参数的效果和指定“-name”参数类似,但忽略字符大小写的差别; -inum:查找符合指定的inode编号的文件或目录; -ipath:此参数的效果和指定...“-path”参数类似,但忽略字符大小写的差别; -iregex:此参数的效果和指定“-regexe”参数类似,但忽略字符大小写的差别; -links:查找符合指定的硬连接数目的文件或目录...+100M -size -500M 查找系统中文件大于500M的文件,并删除 > find / -type f -size +500M -delete 或 > find / -type f -size...查找系统中的空文件 > find / -empty -type f 原文链接:https://rumenz.com/rumenbiji/linux-find.html
find 命令在Linux系统中用于在文件系统中搜索符合特定条件的文件和目录。...以下是find命令的详细文档和一些示例: 命令语法 find 命令的基本语法如下: find [path] [expression] 其中,path 参数指定要搜索的目录或文件路径。...例如:find /var/log -user root 示例 以下是一些使用 find 命令的示例: 搜索指定目录下所有 .txt 文件: find /home/user/documents -name...7 天内修改过的文件: find /home/user -mtime -7 搜索指定目录下所有属于 user 用户的文件: find /home -user user 以上仅是 find 命令的一些常见示例...可以查看相关的Linux文档以获取更详细的信息和示例。
linux 中find 常用示例解析 find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path…] [expression] 其实[-H] [-L] [...] find 命令的参数: path:find命令查找文件的目录路径 例如:.表示当前路径,/表示根路径 expression:expression 可以分为...} \; 删除当前目录下文件大小为零的文件。 ...find ....-name "*.conf" -mtime +5 -ok rm { } \; 在当前目录中查找所有文件名 以.LOG结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示
-prune 使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。 -user 按照文件属主来查找文件。...大多数用户使用这一选项是为了查找旧文件并删除它们。建议在真正执行rm命令删除文件之前,最好先用ls命令看一下,确认它们是所要删除的文件。...在/logs目录中查找更改时间在5日以前的文件并删除它们: $ find logs -type f -mtime +5 -exec rm { } \; 记住:在shell中用任何方式删除文件之前,应当先查看相应的文件...在下面的例子中, find命令在当前目录中查找所有文件名以.LOG结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示。 $ find ..../fie1 6、find命令将删除当目录中访问时间在7日以来、含有数字后缀的admin.log文件。 该命令只检查三位数字,所以相应文件的后缀不要超过999。
exec的问题 参数太长 在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行。...这就是xargs命令的用处所在,特别是与find命令一起使用。 find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。...查询当前目录下所有权限是777的文件 > find . -perm 777 | xargs ls -al 查询当前目录下所有的.txt文件,并输出到指定文件a.log(没有换行) > find ....查询当前目录下所有的.txt文件,并输出到指定文件b.log(有换行) > find ....-name *.txt | xargs -I [] cp -rf [] /tmp -p参数提示是否执行 > find .
exec的问题 参数太长 在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行。...这就是xargs命令的用处所在,特别是与find命令一起使用。 find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。...查询当前目录下所有权限是777的文件 > find . -perm 777 | xargs ls -al 查询当前目录下所有的.txt文件,并输出到指定文件a.log(没有换行) > find ....查询当前目录下所有的.txt文件,并输出到指定文件b.log(有换行) > find ....原文链接:https://rumenz.com/rumenbiji/linux-find-xargs.html 微信公众号:入门小站
-type f -name "*.txt" -exec ls -l {} \; 查找当前目录下内容修改时间是30天以前的.log文件并删除 > find ....查找当前目录下内容修改时间是30天以前的.log文件并删除,删除前给出提示 > find ....-type f -name "*.log" -mtime +30 -ok rm {} \; 在上面的例子中, find命令在当前目录中查找所有文件名以.log结尾、更改时间在30日以上的文件,并删除它们...按y键删除文件,按n键不删除。.../rumenz \; 原文链接:https://rumenz.com/rumenbiji/linux-find-exec.html 微信公众号:入门小站
最近在工作中学习了不少Linux方面的命令,比如vim的使用命令、find命令、rpm打包spec配置文件等等。 鸟哥私房才基础版给了我不少帮助,在这里感谢鸟哥。 ...遇到的其中一个问题是使用ubuntu12.04往公司的SVN上传一个目录,不过之前这个目录是从SVN下载下来的,更改了目录后需要删除原来的所有.svn目录。...上网找了一下Linux下删除目录下所有.svn的方法,方法如下: Linux下删除这些目录是很简单的,主要是使用了find工具,命令如下 find ....-type d -iname ".svn" -exec rm -rf {} \; 感觉Linux下的subersion客户端速度蛮快的,5.8G的目录花10多分钟就能下载到本地,但是使用Windows...可以在终端下使用man find来查询find命令的相关参数。
领取专属 10元无门槛券
手把手带您无忧上云