linux服务器中find命令的详细用法

find查找
i、grep "$str" $filename
ii、echo|cat $str | grep 'str'
iii、从文件夹里面查询出包含字符串'test'的文件
grep 'test' ./*
iv、从文件夹中查询出符合的文件,再从这些文件中查找包含要找的字符串的文件
find -name "*.*" -exec grep --color -n "ceshi" {} \;
v、从文件夹中查询出符合的文件,再从这些文件中查找包含要找的字符串的文件,并显示文件名
find -name "*.php" -exec  grep --color -n "hello" -H  {} \;
find -name "*.php" |xargs  grep --color -n "hello" -H  {} \;
或者
find -name "*.php" -print | xargs grep --color '全文搜索关键字'
查找文件权限为777的文件
find . -name "*.php" -perm 777 -exec ls -alrht {} \;
查找所有者为yansy的文件
find . -name "*.php" -user yansy -exec ls {} \;
查找组名为root的文件
find . -name "*.php" -group yansy -exec ls {} \;
按文件大小来搜索
find . -name "*.php" -size +1000 -exec ls {} \;
按修改时间来搜索
find . -name "*.php" -mmin +30 -exec ls {} \;
忽略并搜索相关的文件
root@yansy:/home/yansy/shell/5、find查找# find . -path 'test' -a -prune -o -name "*.sh" -print
./find_new.sh
./find_test.sh
./test/find_new.sh
./test/find_test.sh
./test/find-exec.sh
./find-exec.sh
root@yansy:/home/yansy/shell/5、find查找# find . -path './test' -a -prune -o -name "*.sh" -print
./find_new.sh
./find_test.sh
./find-exec.sh
查找nouser与nogroup
find . -nouser -print
find . -nogroup -print
查找所有的非隐藏的文件
find . -maxdepth 1 -mtime -30 -type f ! -name ".*" -exec ls {} \;
指定depth
find . -maxdepth 1 -user "root"

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: