目录
1、查找文件
1)whereis 命令
whereis -b 文件名
快速搜索程序文件位置详细说明
2)locate命令
locate 文件名 支持通配符
从系统数据库中搜索文件和 find -name 命令效果一样但是速度快很多,由于数据库默认是一天更新一次,所以新建的文件无法查找,可以用sudo updatedb手动更新数据库。
3)find命令
find pathname -options [-print -exec -ok]
pathname:查找路径
-options:
- -name:按照文件名查找
- -mtime -n +n:按照文件更改时间查找。-n指n天内;+n指n天外
- -type:查找某一类文件;b-块设备文件;d-目录;c-字符设备文件;f-普通文件;
-print:将匹配的文件输出到标准输出
-exec:对匹配的文件执行所给的 shell命令。形式为:command {} ;
-ok:和-exec作用相同,在执行命令前会给出提示,由用户确
find ~ -name "*.txt" -print //在用户目录中查找txt文件并显示
find ~ -name "[A-Z]*" -print //查找以大写字母开头的文件
find / -name "host*" -print //查找以host开头的文件
find / -perm 777 -exec ls -l {} \; //查找所有用户都可读写的文件
find ~ -mtime -2 //查找用户目录下最近两天内改动过的文件
find ~ -amin +30 //查找用户目录下30分钟前被存取过的文件
find ~ -amin -30 //查找用户目录下最后30分钟访问的文件
find / -empty //查找空文件或空目录
find / -mtime -1 -type f -exec ls -l {} \; //查询今天修改过的文件
文件内容查找:
find . -name '*' | xargs grep -r 'zh_Hans_CN' //查找包含zh_Hans_CN内容的文件
2、文件删除
1) rmdir命令
rmdir 是用于删除空目录的命令行,目录中有文件无法删除
2) rm命令
rm 是一个用于删除文件和目录的命令
-d(--dir) 删除空目录
-r(--recursive 或 -R) 删除非空目录和其中的所有内容
-f 关闭写保护提示
实例:
rm -rf 操作目录 // 强制删除目录所有内容
有时rm删除大目录时还是会提示非空目录无法删除,可以配合find命令来解决,首先使用该 find 命令删除目录中的所有文件,然后删除目录
find 操作目录 -type f -delete && rm -r 操作目录