1. 计算当前目录中的文件数:
[root@localhost tmp]# find . -type f | wc -l
2. 查找/etc目录中最新的和最旧的文件,以文件时间排序并按年-月-日的格式显示:
#查找最旧的文件
[root@localhost tmp]# find /etc/ -type f -printf "%T+ %p\n" | sort -n | head -n
--+::47.0000000000 /etc/lsb-release.d/graphics-4.0-ia32 #查找最新的文件
[root@localhost tmp]# find . -type f -printf "%T+ \t%p\n" | sort -n | tail -n
--+::14.4790036700 ./student.txt
注:printf命令输出中,%T表示文件的日期和时间,%p表示带路径的文件名
3. 查看家目录中不以"."开头的最新的文件:
[root@localhost tmp]# find /home/ -type f -printf "%T+ \t%p\n" | grep -v "ws/\."| sort -n | tail -n
--+::22.4699979720 /home/file
4. 查找目录中的最大文件,%s参数表示文件大小,%f参数表示包含文件名
[root@localhost tmp]# find . -type f -printf "%s \t %f\n" | sort -n | uniq | tail -n
.crontab.vf6XP3.swp
5. 统计文件的所有者,使用%u参数,并且统计属于同一个所有者的文件数目(可通过uniq -c实现):
[root@localhost tmp]# find . -type f -printf "%u\n" | grep -v "\./\." | sort | uniq -c
root
ws
6. 查看文件的访问日期,使用%a参数:
[root@localhost tmp]# find . -type f -printf "%a+%p\n" | sort
Fri Jul ::36.0720998929 +./sh/variable.sh
Mon Aug ::49.0879000520 +./.viminfo
Mon Jul ::37.0189000083 +./sh/if1.sh
Mon Jul ::30.0823998314 +./sh/readtest.sh
Mon Jul ::52.0296995712 +./sh/readtest,sh
Mon Jul ::46.0718997111 +./sh/if2.sh
7. 运行命令前,临时清空环境变量,可以使用env -i 命令,表示修改环境变量(忽略环境变量),开始一个shell,新shell中没有多余的环境变量
[root@localhost sh]# env | wc -l [root@localhost sh]# env -i env | wc -l