欢迎来到天天文库
浏览记录
ID:33963338
大小:43.00 KB
页数:8页
时间:2019-03-02
《linux下find命令详解》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、linux下find命令详解 find命令是一个无处不在命令,是linux中最有用的命令之一。find命令用于:在一个目录(及子目录)中搜索文件,你可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件。一、find命令的一般形式 find [options] [查找路径] [查找条件] [处理动作] 查找路径:默认为当前目录 查找条件:默认为查找指定路径下的所有文件 处理动作:默认为显示 path:find命令所查找的目录路径。
2、例如用.来表示当前目录,用/来表示系统根目录 expression:expression可以分为——“-options[-print-exec-ok...]” -options:指定find命令的常用选项 -print:find命令将匹配的文件输出到标准输出,默认,可省略 -exec:find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command'{ };,注意{ }和;之间的空格 1、find./-size0-execrm{};
3、 删除文件大小为零的文件 rm-i`find./-size0` 或find./-size0
4、xargsrm-f& 为了用ls-l命令列出所匹配到的文件,可以把ls-l命令放在find命令的-exec选项中: 2、find.-typef-execls-l{ }; 在/logs目录中查找更改时间在5日以前的文件并删除它们: find/logs-typef-mtime+5-execrm{ }; -ok:和-exe
5、c的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。 find.-name"*.conf" -mtime+5-okrm{ }; 在当前目录中查找所有文件名以.LOG结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示 二、find命令的常用选项及实例 -a:组合条件“和” -not:组合条件“非” 非A并且非B:非(A或B) 非A或非B:非(A并B)
6、 -name 按照文件名查找文件。 find/dir-namefilename 在/dir目录及其子目录下面查找名字为filename的文件 find.-name"*.c"在当前目录及其子目录(用“.”表示)中查找任何扩展名为“c”的文件 -perm 按照文件权限来查找文件。 find.-perm755 在当前目录下查找文件权限位为755的文件,即文件属主可以读、写、执行,其他用户可以读、执行的文件 -prune 使用这一选项可
7、以使find命令不在当前指定的目录中查找,如果同时使用-depth选项,那么-prune将被find命令忽略。 1、find/apps-path"/apps/bin"-prune-o-print 在/apps目录下查找文件,但不希望在/apps/bin目录下查找 2、find/usr/sam-path"/usr/sam/dir1"-prune-o-print 在/usr/sam目录下查找不在dir1子目录之内的所有文件 -user 按照文件属主来查找文件。 find
8、~-usersam 在$HOME目录中查找文件属主为sam的文件 -group 按照文件所属的组来查找文件。 find/apps-groupgem 在/apps目录下查找属于gem用户组的文件 -mtime -n+n 按照文件的更改时间来查找文件,-n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。 1、find/-mtime-5 在系统根目录下查找更改时间在5日以内的文件 2、find/var/adm-mtime+3
9、 在/var/adm目录下查找更改时间在3日以前的文件 -ctime 按照文件的创建时间来查找文件 查找/etc/目录下最近一周内其内容的,且不属于root或hadoop的文件 find/etc/-ctime7-not-userroot-a-not-userhadoop -atime 按
此文档下载收益归作者所有