Linux学习-查找文件

whereis

用来查看与特定命令相关的文件:二进制(可执行)文件,源文件,文档文件

whereis不搜索整个文件系统,只查看那些此类文件极可能存在的目录。

如:/bin,/sbin,/etc,/usr/share/man

whereis command

command是希望查找的命令名称

输出是程序所处的可执行文件的路径名,源文件的路径位置,以及说明书页的路径位置。

选项:

-b  只显示可执行文件的路径名

-m  只显示联机手册中的文件

-s  只显示源文件


扫描二维码关注公众号,回复: 1552622 查看本文章
locate

搜索一个特殊的数据库(该数据库中包含所有可公共访问的文件的路径名),查找所有包含特定模式的路径名。

该数据库自动维护,并定期更新。

locate  pattern

pattern是在路径名中查找的模式。

选项:

-r  使用正则表达式

-c  显示匹配文件的总数,而不显示实际的文件名

-i  忽略大小写

-b  只匹配路径名的最后一部分,即文件名或基名。(最后一个/后的部分)


find

通过搜索目录树查找文件

搜索一个或多个目录树,根据指定的测试条件,查找满足特定标准的文件。一旦搜索完成,find将对查找到的文件执行某种动作。

动作可以是文件名的显示,删除文件,显示文件信息,将文件传递给另一条命令等。

为了运行find,需要指定3件事:目录路径,测试,动作。

路径:查看所以的路径,检查这些路径所表示的整个目录树。

测试:对遇到的每个文件,find应用指定的测试条件。创建一个满足测试标准的所有文件的列表。

动作:一旦搜索完成,find就对列表中的每个文件执行指定的操作。

测试

测试
文件名  
-name pattern 包含pattern的文件名
-iname pattern 包含pattern的文件名(不区分大小写)
文件特征  
-type [df] 文件类型:d=目录,f=普通文件
-perm mode

设置为mode的文件权限

-user userid 属主为userid
-groups groupid 组为groupid
-size [-+]n[cbkMG] n[字符(字节),块,千字节,兆字节,吉字节]
-empty

空文件(大小=0)

访问时间,修改时间  
-amin [-+]n n分钟之前访问
-anewer file fiel文件之后访问
-atime [-+]n n天之前访问
-cmin [-+]n n分钟之前状态改变
-cnewer file file文件之后状态改变
-ctime [-+]n n天之前状态改变
-mmin [-+]n n分钟之前修改
-mtime [-+]n n天之前修改
-newer file file文件之后修改

ps:

+和-分别代表大于或小于

使用-name 时若用通配符,则要用引号引起。

以字节作为单位测试文件大小时,find假定讨论的是文件的内容,而不是使用的磁盘空间。

当以块,千字节,兆字节,吉字节为单位测试文件大小时,find假定讨论的是磁盘空间。

测试求反

可以通过 ! 对测试求反。

! 的两侧必须各留一个空格,并且必须引用 ! 。(\!  或  ‘!')

处理文件权限错误消息

将标准错误重定向到/dev/null

2> /dev/null

动作
动作

-print

将路径名写入到标准输出
-fprint file 同-print;将输出写入到file
-ls 显示长目录列表
-fls file 同-ls;将输出写入到file
-delete 删除文件
-exec command{}\; 执行command,{}指示匹配的文件名
-ok command{}\; 同-exec;但是在运行command之前先确认

ps:

如果不指定动作,-print是默认动作。

-exec就像在命令行上键入命令一样,在命令中,{}用来指代find找到的文件列表。为了表明命令的末尾,必须以;结尾。

-exec为每个文件生成一条单独的命令。

处理找到的命令

xargs可以运行任何使用参数指定的命令,参数通过标准输入传递给该程序。

xargs [-prt] [istring] [comand[argument]]

command是希望运行的命令,string是占位符,argument是从标准输入读取的参数。

-i选项允许使用{}作为占位符(默认),占位符将在命令运行之前被参数取代。

-p  在命令生成时显示每条命令,在运行命令前请求许可

-t  在运行过程中显示每条命令,不可与其他选项一起使用

-r  如果没有输入参数,则不运行命令






猜你喜欢

转载自blog.csdn.net/qq_31730735/article/details/80551061