【原】Linux find 命令整理
作者:david_zhang@sh 【转载时请以超链接形式标明文章】
链接:http://www.cnblogs.com/david-zhang-index/archive/2012/07/02/2573191.html?updated=1
shell编程不好,所以各种命令都的整理下,见笑了,内容来自互联网,笔者自己整理了下:
1 find . -name "*.txt" -print 在当前目录中查.txt文件并显示 2 find . -name "[A-Z]*" -print 查以大写字母开头的文件 3 find . -name "[a-z][a-z][0--9][0--9].txt" -print 查以两个小写字母和两个数字开头的txt文件 4 find . -size +1000000c -print 查长度大于1Mb的文件 5 find . -size 100c -print 查长度为100c的文件 6 find . -size +10 -print 查长度超过期作废10块的文件(1块=512字节) 7 find . -name "host*" -print 查以host开头的文件 8 find . -name "ap*" -o -name "may*" 查找以ap或may开头的文件 9 find . -name "tom.txt" [!] -ftype vfat 查找名称为tom.txt且文件系统类型不为or为vfat的文件 10 find . -name "wa*" -type l 查找名为wa开头且类型为符号链接的文件 11 find . [!] -type d -print 查找非目录或者目录文件 12 find . -empty 查找大小为0的文件或空目录 13 find . -name "passwd*" -exec grep david {} \ 看是否存在david用户 14 find . -perm 755 -print -exec ls -l {} \ 查所有用户都可读写执行的文件 15 find . -name "tmp.txt" -exec cat {} \ 查找temp.txt文件并查看 16 find . -name "tmp.txt" -ok rm {} \ 查找temp.txt文件并删除 17 find . -mtime -2 在.下查最近两天内改动过的文件 18 find . -atime -1 查1天之内被存取过的文件 19 find . -mmin +60 在.下查60分钟前改动过的文件 20 find . -amin +30 查最近30分钟前被存取过的文件 21 find . -user david 列出.目录内属于用户david的文件或目录 22 find . -uid +501 列出.目录内用户的uid大于501的文件或目录 23 find . -group david 列出.组内为david的文件或目录 24 find . -gid 501 列出.组内id为501的文件或目录
Example:
1 Linux下Find与cp、rm结合的应用 2 -------------------------------------------------------------------------------- 3 1.find and cp 4 find /home -name '*.conf'|xargs -I {} cp -r {} /home/conf/ 5 6 2.find and rm 7 find /home -name 'test-file-*' | xargs rm -rf 8 9 other example 10 1.find . -mtime -1 -type f -exec ls -l {} \; 11 2.find /tmp -name "*.h" | xargs -n50 grep SYSCALL_VECTOR 12 3.find /tmp -name "*.h" -exec grep "SYSCALL_VECTOR" {} \;
笔者另推荐:find命令具体含义参考以下链接:http://unixhelp.ed.ac.uk/CGI/man-cgi?find