linux中find命令的使用

来源:岁月联盟 编辑:zhuzhu 时间:2009-08-04
linux中find命令的使用内容简介:我们已经熟悉windows下的文件搜索功能,但在linux下的文本界面开发程序时,如果不知道实现同样功能的命令往往让人感到不是很愉快。现在我就介绍一下在这种情况下如何进行搜索操作的find命令。 find命令能完成在指定的目录下完 我们已经熟悉windows下的文件搜索功能,但在linux下的文本界面开发程序时,如果不知道实现同样功能的命令往往让人感到不是很愉快。现在我就介绍一下在这种情况下如何进行搜索操作的find命令。

find命令能完成在指定的目录下完成查找指定文件的功能。其命令格式如下:

find PATH -option 参数 [-print] [-exec 命令 {} /;]

PATH:为要搜索文件的目录。

-option 参数:用来控制搜索方式,具体如下(以下只给我常用的):

-name "文件名(可以有通配符,*等)":指令查找名。

-prune 目录:指出搜索时不搜索该目录。

-user 用户名:按用户名搜索。

-mtime +n或-n:按时间搜索,+n:表示n天之前的;-n:表示今天到n天前之间的。

-type 文件类型:按指定文件类型搜索。文件类型包括:b:块设备文件;c:字符设备文件;f:普通文件;l:符号连接;d:目录;p:管道。

-print:将搜索结果输出到标准输出。

例子:在root以及子目录查找不包括目录/root/bin的,greek用户的,文件类型为普通文件的,3天之前的名为test-find.c的文件,并将结构输出,find命令如下:

find / -name "test-find.c" -type f -mtime +3 -user greek -prune /root/bin -print

很简单吧。:)

下面看一下exec选项:

-exec:对搜索的结构指令指定的shell命令。注意格式要正确:"-exec 命令 {} /;",在}和/之间一定要有空格才行。

例子:对上述例子搜索出来的文件进行删除操作,命令如下:

find / -name "test-find.c" -type f -mtime +3 -user greek -prune /root/bin -exec rm {} /;

好了,find命令常用的用法已经说的差不多了,如果你已经掌握,那么你会发现这个比window下的搜索好用的多。还是自己感受吧。