手记

Linux每天学习一个命令之find命令二

find [path] [option] [action]
学习了find命令有关用户和用户组的参数,有以下参数:
-uid n: n位数字,表示用户的ID号,在/etc/passwd文件中可以看到
-gid n: n位数字,表示用户组的ID号,在/etc/group文件中可以看到
-user name: name为用户名
-group name: name为用户组名
-nouser: 文件的所有者不在/etc/passwd文件中
-nogroup: 文件的所属组不在/etc/group文件中

值得注意的参数可能就是nouser,nogroup,下面来看看一些例子:

Example 1:查找/home下属于dream的文件

[dream@localhost ~]$ find /home/ -user dream
/home/dream
/home/dream/.mozilla
/home/dream/.mozilla/extensions
/home/dream/.mozilla/plugins
/home/dream/.bash_logout
/home/dream/.bash_profile
/home/dream/.bashrc
/home/dream/.cache
/home/dream/.cache/abrt

同理-group name的方式查找是一样的
Example 2:查找/etc下属于uid为0的用户的文件,只显示前5个

[root@localhost ~]# find /etc/ -uid 0 | head -5
/etc/
/etc/fstab
/etc/crypttab
/etc/mtab
/etc/resolv.conf

同理gid为0的方式查找是一样的

Example 3:查找/usr下不属于用户的文件,只显示前5个

[root@localhost ~]# find /usr/ -nouser | head -5
/usr/local/src/httpd-2.4.18
/usr/local/src/httpd-2.4.18/.deps
/usr/local/src/httpd-2.4.18/.gdbinit
/usr/local/src/httpd-2.4.18/ABOUT_APACHE
/usr/local/src/httpd-2.4.18/acinclude.m4

可找到一些不正常的文件,但是也可以找到自行编译的文件,比如上面的apache服务器文件

总结:
find命令可以根据用户和用户组查找文件,用法如上不在赘述。值得注意的是使用nouser和nogroup命令查找到文件可能是自行编译的软件所产生的文件
上面用到了|管道符,可以简单地理解为,把上个命令的输出作下条命令的输入。
用到了head -n命令是取出内容前几行,-n表示取几行的意思。

0人推荐
随时随地看视频
慕课网APP