Linux find命令
 
 
 Linux find命令
 
  find命令可帮助我们在目录中查找特定文件。它用于查找各种条件(例如权限,用户所有权,修改,日期/时间,大小等)的文件列表。
 
 默认情况下,大多数 Linux发行版,因此我们不需要安装任何其他软件包。它是 Linux 系统中最重要和最常用的命令之一。
 
 
  
  find <location> <comparison-criteria> <search-term>
 
   
  
 以下符号用于指定目录: 
 
  (.): 对于当前目录名
 
  (/): 对于根目录
 
按名称查找文件
 
 我们可以搜索所有扩展名为" .txt"的文件。为此,请执行以下命令: 
 
 
 上面的命令将列出当前工作目录中的所有文本文件。考虑下面的输出: 
 
 
 
 从上面的输出中,所有具有'.txt'的文件扩展名是用find命令列出的。
 
按类型查找文件
 
 "-type"参数用于指定文件类型。 
 
 某些文件类型如下: 
 
 f: 常规文件 
 d: 目录 
 l: 符号链接 
 c: 字符设备 
 b: 阻止设备 
 考虑以下命令: 
 
 
  
  find .-type d-name "*.bak"  
 
   
  
 上面的命令将列出所有扩展名为'.bak'的目录。考虑以下输出: 
 
 
 
 从上面的输出中,命令" find。-type d名称" * .bak"显示所有以" .bak"结尾的目录。
 
查找较新的文件
 
 "-较新'参数有助于搜索比提到的文件新的文件。请考虑以下命令: 
 
 
 上面的命令将显示当前工作目录中所有比'msg.txt'更新的文件。考虑以下输出: 
 
 
 
 从上面的输出中,显示的所有文件都比" msg.txt"文件。
 
查找并删除文件
 
 "-delete"选项用于删除特定文件。使用此命令时,我们需要非常小心,因为一旦执行,就没有撤消选项。考虑以下命令: 
 
 
  
  find .-name Demo.txt-delete
 
   
  
 上面的命令将从当前工作目录中删除文件'Demo.txt'。考虑以下输出: 
 
 
 
查找目录
 
 " type-d"选项用于查找目录。考虑以下命令: 
 
 
  
  find . type-depth-name Newdirectory
 
   
  
 上面的命令将找到" Newdirectory"位置。考虑以下输出: 
 
 
 
通过以下方式查找文件修改时间
 
 "-mtime"选项及其后的天数用于通过修改查找文件。天数可以是正数或负数。负值的使用将少于最后一天使用的-1,类似地,+ 1将为一天以上的文件找到文件。考虑以下命令: 
 
 
  
  find ./Newdirectory-mtime-1
 
   
  
 上面的命令将查找在最后一天内修改的文件。考虑以下输出: 
 
 
 
通过以下方式查找文件权限
 
 "-perm"选项用于按权限查找文件。使用'-perm'选项执行find命令并传递所需的值。考虑以下命令: 
 
 
  
  find ./<directory name>-perm 777
 
   
  
 上面的命令将列出每个人都可以读取,写入和执行的指定目录中的文件。
 
查找并替换文件
 
 要查找和替换文件,我们必须将find命令与sed命令结合使用。要对文件进行操作,请在find命令中使用"-exec"选项。考虑以下命令: 
 通过上述命令
 
  
  find ./Newdirectory-type f-exec sed-i 's/find/replace/g' {} \; 
   
  
 ,指定的出现将被替换。考虑以下输出: 
 
 
 
在其中查找文本多个文件
 
 我们可以将find命令与grep命令进行另一种组合,以从各种文件中查找文本。考虑以下命令: 
 
 
  
  find ./Newdirectory-type f-name "*.txt"-exec grep 'demo'  {} \; 
   
  
 上面的命令将从目录" Newdirectory"中的所有文本文件中找到包含文本" demo"的行。考虑以下输出: 
 
 
 
 从上面的输出中,我们可以看到带有文本'演示"已显示。