linux基础篇-17,find命令详解

文件查找:

locate:非实时查找,模糊匹配,查找根据全系统文件数据库进行,速度快

updatedb:手动生成文件数据库

find:实时,准确,支持众多查找标准,遍历指定目录中的所有文件完成查找,书店慢

find 查找路径 查找标准 查找到一行的处理动作

查找路径:默认为当前目录

查找标准:默认为指定文件下的所有文件

处理动作:默认为显示

匹配标准:-name ‘filename‘:对文件名做精确匹配

文件名通配:“”

*

?

[]

-iname filename:文件名匹配不区分大小写

-regex pattern:基于正则表达式进行的文件

-user username:根据属主查找

-group groupname:根据属组查找

-uid uid:根据uid查找

-gid gid:根据gid查找

-nouser:查找没有属组的文件

-type

f:普通文件 d:目录 c b l p s

-size [+-]

#k #M #G

组合条件:

-a:与

-o:或

-not:非

/tmp/test目录下,属组不是user1,也不是user2的文件

-mtime 修改

-ctime

-atime 访问

[+-]#

-mmin

-cmin

-amin

[+-]#

-perm mode:完全匹配

/mode:匹配一个就行

-mode:文件权限包含此mode权限才显示

运作:

-print:显示

-ls:类似ls -l

-ok command {} \;每次都需用户确认

-exec command {} \;

范例1:任意的.sh文件权限包含111的文件,去除其他用户的执行权限

[[email protected] ~]# find ./ -name "*.sh"  -a -perm -111 -exec chmod o-x {} \;

范例2:查找用户不属于root,bin ,student用户的文件

[[email protected] ~]# find /usr -not -user root -a -not -user bin -a -not -user student

范例3,查找/var目录下,属主为root并且属组为apache的文件

[[email protected] ~]# find /var -user root -group apache

范例4,查找/var目录下,最近7天修改过,不是root,也不是apache的用户

[[email protected] ~]# find /var -mtime -7 -not -user root -a -not -user apache

范例5,查找当前系统上没有属组,也没有属主且最近1天内曾被访问过的文件,并将属主属组改为root

find / \(-nouser -o -nogroup\) -a -atime -1 -exec chmod root:root

范例6,查找/etc目录下大于1M的文件,并将文件名写入/tmp/etc.txt文件中

[[email protected] ~]# find /etc -size +1M >> /tmp/etc.txt

范例7,查找/etc目录下所有用户都没有写权限的文件,并显示其详细信息

[[email protected] ~]# find /etc/ -not -perm -222 -ls

xargs

时间: 2024-10-07 20:42:19

linux基础篇-17,find命令详解的相关文章

Linux基础知识之echo命令详解

echo命令 功能:显示字符 语法:echo [-neE][字符串] 说明:echo 会将输入的字符串送往标准输出.输出的字符串间以空白字符隔开,  并在最后加上换行号 echo "$VAR_NAME":  变量会替换,双引号表弱引用 echo '$VAR_NAME':  变量不会替换,强引用 $echo –e "Enter the file name: \c" echo  需要使用-e  参数来打印转义字符. echo命令选项: -n:不在字符的最后,自动换行 -

Linux和Windows下ping命令详解

转:http://linux.chinaitlab.com/command/829332.html 一.Linux下的ping参数 用途 发送一个回送信号请求给网络主机. 语法 ping [ -d] [ -D ] [ -n ] [ -q ] [ -r] [ -v] [ \ -R ] [ -a addr_family ] [ -c Count ] [ -w timeout ] [ -f | -i \ Wait ] [ -l Preload ] [ -p Pattern ] [ -s PacketS

Linux CPU实时监控mpstat命令详解

Linux CPU实时监控mpstat命令详解 简介 mpstat是Multiprocessor Statistics的缩写,是实时系统监控工具.其报告与CPU的一些统计信息,这些信息存放在/proc/stat文件中.在多CPUs系统里,其不但能查看所有CPU的平均状况信息,而且能够查看特定CPU的信息.mpstat最大的特点是:可以查看多核心cpu中每个计算核心的统计数据:而类似工具vmstat只能查看系统整体cpu情况. 语法 mpstat [-P {|ALL}] [internal [co

Linux下的压缩解压缩命令详解

zip -r myfile.zip ./*将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzipunzip -o -d /home/sunny myfile.zip把myfile.zip文件解压到 /home/sunny/-o:不提示的情况下覆盖文件:-d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下: 3.其他zip -d myfile.zip smart.txt删除压缩文件中smart.txt文件z

[鸟哥linux视频教程整理]02_04_Linux文件管理命令详解续2

Linux文件管理命令详解续: 一.复制和移动文件 cp:   cp SRC DEST -r:复制目录到文件 -f:强行复制 -i:交互式 -p:保留原文件属性不变 -a:归档复制,常用于备份 说明: 1.一个文件到一个文件,多个文件到一个目录: 2.默认情况下只能复制文件到目录,不能复制目录到文件: 3.若目的目录下无文件,则复制并创建同名文件,否则重命名. 4.哪个用户复制的,新文件属主属组归谁: move:  move SRC  DEST move -t DEST SRC 1.目的地址有目

Linux下的压缩解压缩命令详解及实例

实例:压缩当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ============================ 另:有些服务器没有安装zip包执行不了zip命令,但基本上都可以用tar命令的,实例如下: tar -zcvf /home/zdzlibs.tar.gz /home/zdz/java/zdzlibs/ ============================ linux zip命令 zip -

Linux学习笔记—— 用户管理命令详解

 用户管理命令详解  用户管理: useradd,userdel,usermod,passwd,chsh,chfn,finger,id,chage 添加用户: useradd [options] USERNAME    -u (UID)   手动指定UID -g (GID)  (基本组) -G, ...     (附加组) 可以有多个,彼此之间用,号隔开 -c "COMMENT"         注释信息     -d /path/to/somedirectory  指定家目录 -s

linux下压缩和解压命令详解

tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名. # tar -cf all.tar *.jpg

Linux下tar压缩解压缩命令详解

tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名. # tar -cf all.tar *.jp