Linux基础知识:Linux使用find和xargs

有时可能需要在系统中查找具有某一特征的文件 (例如文件权限、文件属主、文件长度、文件类型等等)。这样做可能有很多原因。可能出于安全性的考虑,或是一般性的系统管理任务,或许只是为了找出一个不知保存在什么地方的文件。 find是一个非常有效的工具,它可以遍历当前目录甚至于整个文件系统来查找某些文件或目录。

在此介绍以下内容:

find命令选项。

使用find命令不同选项的例子。

配合find使用xargs命令的例子。

由于find具有如此强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间

来了解一下。即使系统中含有网络文件系统 (NFS ),find命令在该文件系统中同样有效,只要

你具有相应的权限。

在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一

个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。

find命令的一般形式为:

find pathname -options [-print -exec -ok]

让我们来看看该命令的参数:

pathname find命令所查找的目录路径。例如用。来表示当前目录,用/来表示系统根目录。

-print find命令将匹配的文件输出到标准输出。

-exec find命令对匹配的文件执行该参数所给出的 shell命令。相应命令的形式为 ‘comm

and’ {} \;,注意{ }和\;之间的空格。

-ok 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的 shell命令,

在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

1 find命令选项

find命令有很多选项或表达式,每一个选项前面跟随一个横杠 -。让我们先来看一下该命

令的主要选项,然后再给出一些例子。

-name 按照文件名查找文件。

-perm 按照文件权限来查找文件。

-prune 使用这一选项可以使find命令不在当前指定的目录中查找,如果同时使用了 -depth

选项,那么-prune选项将被find命令忽略。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/25370.html