locate命令
1.locate filename
模糊匹配 只要文件名中包含关键字即可
非实时查找,速度比find快.
依靠索引数据库 /var/lib/mlocate/mlocate.db
每天自动运行一次来更新数据库.
updatedb 更新索引数据库
2.适合搜索变化不太频繁的文件.对系统的资源消耗不大.
3.实例
1. locate -r "^/etc/.*\.conf$"
find命令
实时查找工具,通过遍历指定路径来完成文件查找
查找出来的文件名称必须是filename而不是包含filename
find / -name "*filename" 模糊匹配查找
实例:
1.find /etc -maxdepth 3 -mindepth 1 -name passwd
2.find -samefile file 查找file的硬链接文件
3.find /etc -regex ".*\.conf$" 正则表达式查找
4.find /etc " *.sh" 通配符查找 find /etc -name "*.sh" -ls
5. find /etc -iname sos.conf
6.find /data -size 1024c 查找文件大小范围在(1023,1024] 1023是开区间表示不包含1023,1024是闭区间表示包含1024.总体表示为大于1023小于等于1024字节
7.find /data -size 1k 查找文件大小范围在(1-1,1]这个范围内,表示查找文件大小大于0k,小于等于1k的所有文件.
8.find /data -size -1024 查找的文件大小范围在 [0,1024-1]的所有文件
9.find /data -size +1023 表示(1023,无穷大]的文件 不包含1023
10. find /mnt -size +10M -exec mv {} /data/ \; 找到mnt目录下大于10M的文件并且移动到/data目录下. {}表示搜索出来的文件名本身
xargs命令
默认是把前面命令的输出信息用空格隔开,但是可以添加选项使用特定符号来代替空格符号
有时候用空格分隔输出信息同样实现不了相应的效果
echo f{1..10} | xargs -n2 echo -n 以空格回车符进行分割前面命令的输出信息
压缩和打包
1.压缩只能对单个文件进行压缩,如果需要同时对多个文件进行压缩,就必须先打包然后再进行压缩
2.tar 可以对目录进行打包成一个文件,然后可以使用压缩命令对这个打包文件进行压缩
3.创建归档文件
tar -cpvf data.tar /data
4.查看归档文件tar包下面的所有文件
tar tvf data.tar
5.解压缩tar包文件
tar xvf data.tar
6.同时进行打包和压缩
tar -zcpvf data.tar.gz /data
tar xvf data.tar.gz
7.切割和合并压缩文件
split -b 10M -d data.tar.xz a.tar 把data.tar.xz压缩包切割成10M一个包
cat a.tar0* > newdata.tar.xz 把分割后的文件合并成一个压缩包