
find 命令用于根据指定条件(如文件名、大小、修改日期和其他属性)搜索和定位文件和目录。你可以用它搜索整个文件系统或某个特定目录。
系统管理员和普通用户常用它来快速查找文件,尤其是在有大量文件的系统中。无论你是在寻找丢失的文件,还是需要对一组符合特定条件的文件执行批量操作,find 命令都是管理和组织文件系统的重要工具。
find 命令的一般语法:
$ find [OPTIONS] [PATH...] [EXPRESSION]
1. 搜索目录中的特定文件
find ./ExampleDir -name example.txt
使用 -name 参数时,该命令将尝试在 ExampleDir 目录中搜索 example.txt;如果找到,将返回文件的路径。
./ExampleDir/subdir1/example.txt ./ExampleDir/subdir2/subsubdir/example.txt
2. 查找并列出扩展名相同的文件
find ./dirname -name *.txt
该命令将搜索 ExampleDir 目录中所有扩展名为 .txt 的文件。如果找到,每个结果都将以新行返回。
./dirname/file1.txt ./dirname/file2.txt ./dirname/subdir/file3.txt ./dirname/subdir/another_subdir/file4.txt
3. 查找并列出空文件和空子目录
find ./ExampleDir -empty
该命令带有 -empty 参数,将查找并列出 ExampleDir 文件夹内的所有空文件和空子文件夹。
空文件的定义是文件大小为 0 字节,空文件夹的定义是没有文件或文件大小为 0 字节。
4. 查找并列出包含特定文本的文件
find ./ExampleDir -type f -name "*.txt" -exec grep 'Example'  {} \;
该命令在 ExampleDir 目录下扩展名为 .txt 的文件中搜索单词/字符串 “Example“。
./ExampleDir/file1.txt:This is an Example line in file1. ./ExampleDir/subdir/file2.txt:Another Example in a different file. ./ExampleDir/file3.txt:Example usage of the find command.
5. 查找并列出特定用户拥有的文件和子目录
find ./ExampleDir -user ubuntu
该命令带有 -user 参数,将查找 ExampleDir 目录中 Ubuntu 用户拥有的文件和子目录。如果找到,将返回文件名。
下面是 ls -l 的结果示例:
-rw-rw-r-- 1 newone ubuntu 20 Jan 27 06:24 example.txt
newone 表示组名, ubuntu 表示用户。
6. 查找并列出特定组拥有的文件和子目录
find ./ExampleDir -group ubuntu
该命令带有 -group 参数,将查找 ExampleDir 目录中 Ubuntu 组拥有的所有文件和子目录。如果找到,将返回文件名。
更多 Linux 命令
下面罗列了最常见的一些 Linux 命令,您可以根据自己的需要查阅对应命令的详细解析:
| 目录操作 | rmdir·cd·pwd·exa·ls | 
| 文件操作 | cat·cp·dd·less·touch·ln·rename·more·head | 
| 文件系统操作 | chown·mkfs·locate | 
| 网络 | ping·curl·wget·iptables·mtr | 
| 搜索和文本处理 | find·grep·sed·whatis·ripgrep·fd·tldr | 
| 系统信息和管理 | env·history·top·who·htop·glances·lsof | 
| 用户和会话管理 | screen·su·sudo·open | 
此外,我们还整理 Linux 命令行大全,以帮助大家全面深入地学习 Linux。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
    















暂无评论内容