Photo by 加布里埃尔·海因策 on 不飞溅
作为 Linux 用户或管理员,您经常会遇到在操作系统的不同目录中查找文件的需要。手动扫描目录结构以查找所需文件并不容易,因为 Linux 机器中可能有数百或数千个目录。实现此目的的最常见和最有效的命令是 Linux find 命令。在这里,我将列出 10 个实际示例,说明如何在 Linux 中根据不同的标准查找文件。
注意:命令在 大胆的 而输出不是。
寻找 。 -名称“执行.py”
2.在整个根目录中查找所有大小大于1GB的文件,
**查找 / -type f -size +1G
** /proc/kcore
/root/bigfile.txt
3.在整个根目录中查找777权限的文件,
**查找 / -type f -perm 777
** /root/iamempty.txt
4.在整个根目录中查找多个扩展名.cpp的文件。
**查找 / -type f -name “*.cpp”
** /root/testfile.cpp
5.在用户'admin'拥有的根目录下查找空文件,但忽略目录/proc下的文件。我们用 - 空的 选项。
**查找 / -path /proc -prune -o -type f -user admin -empty
** /proc
/var/spool/邮件/管理员
/var/tmp/emptyfile.txt
/tmp/adminfile.txt
6.在当前目录和下面的1个目录中找到空文件。不应更深入地搜索该目录之外的空文件。我们使用 - 最大深度 选项,
**查找 /root -maxdepth 2 -type f -empty
** /root/testfile.cpp
/root/test/emptynew.txt
7. 在用户'admin' 拥有的/var/tmp 目录中查找超过90 天未修改的文件。将错误输出(如果有)重定向到 null 以便我们看不到错误,
**查找 /var/tmp/ -type f -mtime +90 -user admin 2 > /dev/null
** /var/tmp/adminnewfile.txt
8. 同7,但另外删除找到的文件,
查找 /var/tmp/ -type f -mtime +90 -user admin| xargs /bin/rm
9. 在目录 /var 下查找用户 'admin' 拥有的所有文件目录,但不显示目录 /var/tmp/test 中的任何内容。我们使用选项 - 修剪 为了这。请记住,在 Linux 中,一切都是包含目录的文件。因此,如果找到目录 test ,请不要深入其中。
**查找 /var -path /var/tmp/test -prune -o -user admin
** /var/spool/邮件/管理员
/var/tmp/adminfilenew.txt
/var/tmp/test
10. 在根目录中使用 -iname(ignore case in Naming) 选项找到文件 'passwd' 并对其执行 grep 以显示以单词 'admin' 开头的行。
**查找 / -iname “passwd” -exec grep -i '^admin' {} ; 2 > /开发/空
** 管理员❌1002:1003::/home/admin:/bin/bash
Find 命令是一个非常有用的工具,用于搜索和查找文件以及对它们执行操作。我们只触及了冰山一角。它仍然有绝大多数选项可用。您使用 Find 命令的其他方式有哪些?请在评论中告诉我。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
本文链接:https://www.qanswer.top/2852/14453108