whereis(寻找特定文件)
-b: 只找二进制格式的文件 -m: 只找在说明文件 manual 路径下的文件 -s: 只找 source 源文件 -u: 查找不在上述三个选项当中的其他特殊文件locate
locate 寻找数据是由已创建的数据库 /var/lib/mlocate/ 里面的数据所查找的,而数据库的创建默认是每天执行一次,新建的文件直接查找会找不到,需要手动更新数据库,直接输入“updatedb”就可以了。
find
与时间有关的参数:
-mtime n : n为数字,意义为在n天之前的“一天之内”被更改过的文件 -mtime +n : 列出在n天之前的(不含n本身)被更改过的文件名 -mtime -n : 列出在n天之内(含n天本身)被更改过的文件名 -newer file: file为一个存在的文件,列出此file还有新的文件名 时间轴表示: |4| -4|----------> <----------|+4 <------7-6-5-4-3-2-1-now--------范例:
# 将过去系统上面24小时内有改动的文件列出 find / -mtime 0 # 寻找 /etc 下面的文件,如果文件日期比 /etc/passwd 新就列出 find /etc -newer /etc/passwd与用户或用户组名有关的参数:
-uid n: n为数字,这个数字是用户的账号ID,即UID,这个UID是记录在/etc/passed 里面与账号名称对应的数字 -gid n: n为数字,这个数字是用户组名的ID,即GID,这个GID记录在/etc/group中 -user name: name为用户账号名称 -group name: name为用户组名 -nouser: 寻找文件的所有者不存在/etc/passwd 的人 -nogroup: 寻找文件的所有用户组不存在于 /etc/group 中的文件范例:
# 查找/home 下面属于 vbird 的文件 # 可以利用这个命令将属于某个用户的所有文件都找出来 find /home -user vbird # 查找系统中不属于任何人的文件 # 通过这个命令可以找出那些不太正常的文件 find / -nouser与文件权限及名称有关的参数:
-name filename: 查找文件名为 filename 的文件 -size [+-]SIZE: 查找比SIZE还要大(+)或小(-)的文件,这个SIZE的规格有:c-byte k-1024bytes -type TYPE: 查找文件的类型为TYPE的,类型主要有:一般正规文件(f)、设备文件(b,c)、目录文件(d)、连接文件(l)、socket(s)、FIFO(p)等 -perm mode: 查找文件权限“刚好等于mode的文件” mode类似chmod的属性值,如-rwxr-xr-x的属性值为4755