Linux中的find命令及其示例

这个 发现 UNIX中的command是用于遍历文件层次结构的命令行实用程序。它可以用来查找文件和目录,并对它们执行后续操作。它支持按文件、文件夹、名称、创建日期、修改日期、所有者和权限进行搜索。通过使用“-exec”,可以对找到的文件或文件夹执行其他UNIX命令。

null

语法:

$ find [where to start searching from]
 [expression determines what to find] [-options] [what to find]

选项:

  • -执行命令: 满足上述条件并返回0作为成功执行命令的退出状态的正在搜索的文件。
  • -ok CMD: 它的工作原理与-exec相同,只是首先提示用户。
  • -因努姆: 搜索inode编号为“N”的文件。
  • -链接N: 搜索带有“N”链接的文件。
  • -名称演示: 搜索由“demo”指定的文件。
  • -更新的文件: 搜索在“文件”之后修改/创建的文件。
  • -perm八进制: 如果权限为“octal”,则搜索该文件。
  • -打印: 显示使用其余条件找到的文件的路径名。
  • -空的: 搜索空文件和目录。
  • -尺寸+N/-N: 搜索“N”块的文件;’N’后跟’c’可用于测量字符大小;’+N’表示大小>N’块,’-N’表示大小
  • -用户名: 搜索用户名或ID为“name”的文件。
  • (expr): 如果“expr”为真,则为真;用于组合或的分组标准。
  • ! expr: 如果“expr”为false,则为True。

例如: 考虑下面的树:

tree hirerachy

1.搜索具有特定名称的文件。

$ find ./GFG -name sample.txt 

它将搜索样本。GFG目录中的txt。 输出: Search a file with specific name

2.使用模式搜索文件。

$ find ./GFG -name *.txt 

它将提供所有包含“”的文件。最后是txt。 输出: Search a file with pattern

3.如何在确认后查找和删除文件。

$ find ./GFG -name sample.txt -exec rm -i {} ; 

输入此命令后,如果要删除样本,将出现确认提示。不管有没有。如果输入“Y/Y”,将删除该文件。 输出:  find and delete a file with confirmation

4.搜索空文件和目录。

$ find ./GFG -empty

此命令用于查找输入目录或子目录中的所有空文件夹和文件。 输出: Search for empty files and directories

5.搜索具有输入权限的文件。

$ find ./GFG -perm 664

此命令用于查找GFG目录或子目录中具有给定权限的所有文件。 输出: Search for file with entered permissions

6.在多个文件中搜索文本。

$ find ./ -type f -name "*.txt" -exec grep 'Geek'  {} ;

此命令打印包含“Geek”的行,并且“-type f”指定输入类型为文件。 输出: Search text within multiple files

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享