📅  最后修改于: 2020-12-08 03:15:17             🧑  作者: Mango
find命令可帮助我们在目录中查找特定文件。它用于查找各种条件(例如权限,用户所有权,修改,日期/时间,大小等)的文件列表。
它是Linux系统最重要和最常用的命令之一。
find
以下符号用于指定目录:
(。) :用于当前目录名称
(/) :对于根目录
让我们看一下以下find命令示例:
我们可以搜索所有以“ .txt”扩展名结尾的文件。为此,执行以下命令:
find . -name "*.txt"
上面的命令将列出当前工作目录中的所有文本文件。考虑以下输出:
从上面的输出中,使用find命令列出所有扩展名为'.txt'的文件。
“ -type”参数用于指定文件类型。
一些文件类型如下:
考虑以下命令:
find . -type d -name "*.bak"
上面的命令将列出所有扩展名为“ .bak”的目录。考虑以下输出:
从上面的输出中,命令“ find。-type d -name“ * .bak”显示所有以'.bak'结尾的目录。
“ -newer”参数有助于搜索比提到的文件新的文件。考虑以下命令:
find . -newer msg.txt
上面的命令将显示当前工作目录中所有比'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 ./ -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”的行。考虑以下输出:
从上面的输出中,我们可以看到已经显示了带有文本“ demo”的行。