文件查找
which :命令查找
find: 文件查找,针对文件名
locate:文件查找,依赖数据库
一、命令文件查找
一、查找ls 命令的位置
which ls //从PATH环境变量
或者
# whereis vim
二、任意文件
find
语法
find [path...] [options] [expression] [action]
命令 路径 选项 表达式 动作
①按文件名:
[root@qianfeng ~]# find /etc -name "hosts"
[root@qianfeng ~]# find /etc -iname "hosts" find /etc -iname "HOSTS" -i忽略大小写 i可以忽略大小写来查找
[root@qianfeng ~]# find /etc -iname "hos*" 心中有爱(i),什么都找得到
结果输出 /etc/hosts 文件查找成功
②按文件大小:
[root@qianfeng ~]# find /etc -size +5M 文件>5M 这里“size”是大小意思
[root@qianfeng ~]# find /etc -size 5M 文件=5M
[root@qianfeng ~]# find /etc -size -5M 文件<5M
③指定查找的目录深度:
[root@qianfeng ~]# find / -maxdepth 3 -a -name "ifcfg-en*" 这里maxdepth是深度 后面的数字是几级目录
[root@qianfeng ~]# find / -maxdepth 4 -a -name "ifcfg-en*"
④按文件属主、属组找:
[root@qianfeng ~]# find /home -user aaa // 属主是aaa的文件
[root@qianfeng ~]# find /home -group hr // 属组是hr组的文件
⑤按文件类型:
[root@qianfeng ~]# find /tmp -type f f普通文件 文件type关键词
[root@qianfeng ~]# find /dev -type b b块设备文件
⑥按文件权限:
[root@qianfeng ~]# find . -perm 644 -ls 关键词perm -ls 是find的动作之一,精确权限
⑦找到后处理的动作 ACTIONS:
找到后删除
# find /etc -name "qwer.txt" -delete
找到后复制
# find /etc -name "ifcfg*" -ok cp -rvf {} /tmp \; cp -rvf {} /tmp 对比cp /etc/passwd /tmp/etc1
找到的文件 连接符 前面找到的文件 结束符
文件打包及压缩
tar命令是Unix/Linux系统中备份文件的可靠方法,
几乎可以工作于任何环境中,它的使用权限是所有用户。
建议针对目录
打包,压缩
语法:tar 选项 压缩包名称 源文件
===打包,压缩===
# tar -cf etc.tar /etc
# tar -czf etc-gzip.tar.gz /etc/ //z是gzip
# tar -cjf etc-bzip.tar.bz /etc/ //j是bzip
# tar -cJf etc-xzip.tar.xz /etc/ //J是xzip
观察三个包的体积。
# ll -h etc*
-rw-r--r--. 1 root root 11M 10月 14 10:07 etc-gzip.tar.gz
-rw-r--r--. 1 root root 8.9M 10月 14 10:08 etc-bzip.tar.bz
-rw-r--r--. 1 root root 7.6M 10月 14 10:08 etc-xzip.tar.xz
压缩速度和压缩体积成反比。
解压,解包
查看,并没有解压
# tar -tf etc.tar //t查看f文件名
解压缩
# tar xf etc3.tar.xz
# tar -xvf etc2.tar.bz2 -C /tmp //-C重定向到//tmp目录