Linux文件管理知识:查找文件(第二篇)
下篇文章详尽介绍了linux系统中查找文件的工具或则命令程序locate和find命令的基本操作。这么linux操作系统论文,明天这篇文章紧接着查找文件相关操作内容介绍。
Find命令所属操作列表中的条目,有助于我们想要的结果输出。下篇文章已提到find命令是基于搜索结果来执行操作命令程序。
预定义操作描述:
操作
描述
-delete
删掉当前匹配的文件
-ls
对匹配的文件执行等同的ls-dils命令。并将结果发送到标准输出
把匹配文件的全路径名输送到标准输出。若果没有指定其它操作,这是默认操作
-quit
一旦找到一个匹配linux解压rar,退出
比如:
find~
find~-print
//此命令将home家目录中包含的每位文件和子目录输出。以一个列表的方式输出。两种命令的输出完全一致。
删掉特定条件的文件
使用find命令可以删掉符合一定条件的文件。
比如:
find~-typef-name'*.BAK'-delete
//删掉扩充名为“.BAK”(这一般拿来指定备份文件)的文件,在用户家目录及它的子目录下搜索以.BAK结尾的文件名。一旦以.BAK结尾的文件被找到后,就删掉它们。
备注:当使用-delete操作命令时,你肯定会愈加当心。那我们怎样做更妥当呢?妥当的做法是我们可以先使用print程序命令测试下,是否符合我们要的搜索结果。
逻辑关系—逻辑运算符
比如:
find~-typef-and-name'*.BAK'-and-print
这个程序命令一旦被执行,它还会搜索以.BAK后缀的相关文件linux创建文件夹 命令,并将符合条件文件的相对路径名称标准输出给我们。命令执行的缘由是由每位测试和操作之间的逻辑关系决定的。
这么逻辑运算符是怎样影响命令怎么执行的呢?
测试/行为
只有…的时侯,才被执行
只有-typefand-name’*.BAK’为真的时侯
-name
‘*.BAK’只有-typef为真的时侯
-typef
总是被执行,由于它是与-and关系中的第一个测试/行为
此表可以看出测试和行为之间的逻辑关系决定了哪一个会被先执行,同时测试和行为的次序也很重要。
我们重新调整下测试和行为之间的次序:让-print行为是第一个linux创建文件夹 命令,这么结果会迥然不同:
比如:
find~-print-and-typef-and-name'*.BAK'
上述命令会输出每位文件(-print行为总是为真),之后才是测试文件类型和指定的文件扩充名。
用户定义操作
不仅预定义的操作外,我们可以调用任意的命令。一般情况下是通过-exec命令。
比如:
-execcommand{};
command代表一个命令的名子,{}代表当前路径名的符号表示,分号代表必要的分隔符,表明命令的结束。
其实,怎么交互式地执行一个用户定义的操作行为?通过使用-ok操作来取代-exec,它在执行每位指定的命令之前,会提示用户:
find~-typef-name'foo*'-okls-l'{}'';'
?y