文章目录
tar命令
tar打包命令
- 该命令不会压缩包的体积,反而包的体积会变大
tar -cf 打包文件名 要打包的文件
tar查看包内容
tar -tf 压缩包名
删除压缩包内的某个文件
tar -f 压缩包名 --delete 要删除的文件名
合并压缩包
tar -f 压缩包名 -A 要合并的包
向包内添加新文件
tar -f 压缩包名 -r 要添加的新文件
解包命令
tar -xf 压缩包名 -C 解压目录
gzip命令
gzip压缩命令
- 存在1-9的压缩级别,默认为6
gzip -压缩级别 文件名
gzip解压缩命令
gzip -d 文件名
- tar只能打包,不压缩体积
- gzip只能压缩单个文件,不能打包,所以两者应当搭配使用
tar gzip搭配打包压缩
tar -czf 文件名
tar gzip搭配解压缩
tar -xzf 文件名
查找相关命令
locate查找文件
locate 查找目录 文件名
- 该查找较快,是因为它是在数据库中查找/var/lib/mlocate
- 该数据库存放着文件的索引
- 默认每天更新一次数据库,可以使用update手动更新DB
find命令
find 查找范围 查找条件 动作
通过文件名查找
- 这里的名字为精确名字,可以使用通配符
find 目录 -name 名字
通过文件类型查找
- 这里的type为文件类型
参数 | 含义 |
---|---|
d | 目录文件 |
f | 普通文件 |
c | 字符设备文件 |
b | 块设备文件 |
l | 符号链接文件 |
find 目录 -type 文件类型
根据时间查找
# 查找三天内修改过的文件 -ls为动作选项
find 目录 -mtime -3 -ls
# 查找七天前修改过的文件 -ls为动作选项
find 目录 -mtime +7 -ls
# 查找4天前那一天的修改过的文件 -ls为动作选项
find 目录 -mtime 4 -ls
根据文件大小查找
find 目录 -size 1024k -ls
根据文件所属用户和用户组查找
# 查找所属于root用户的文件
find 目录 -user root -ls
# 查找uid为8的文件
find 目录 -uid 8 -ls
# 查找用户组为root的文件
find 目录 -group root -ls
# 查找组id为8的文件
find 目录 -gid 8 -ls
根据文件权限查找
find 目录 -perm 777 -ls
连接多个参数
find 目录 \(-size +1k -a -size -10m -a -type f\) -ls
-exec
find 目录 \(-size +1k -a -size -10m -a -type f\) -ls
-ok
- 该命令和-exec效果相同,但是会每次都提示用户,推荐使用-ok
find 目录 \(-size +1k -a -size -10m -a -type f\) -exec rm -rf {} \;
通配符
通配符 *
- 代表任意长度字符
rm -rf *.txt
通配符 ?
- 代表一个字符
ls -l /bin/??sh
通配符 []
# 匹配0-9之间的字符
cp /tmp/file[0-9].txt ~
# 匹配任意一个字符
cp /tmp/[a,1,b].txt ~
通配符 {}
# 删除包含字符串str1 或者 str2的txt文件
rm -rf {str1,str2}*.txt
通配符 !
# 删除不包含字符串str1 或者 str2的txt文件
rm -rf {!str1,str2}*.txt
查看文件
cat
- 超过一页的缓冲区无法查看,无法翻页
- 适合查看较小的文件
cat 文件名
less
- 上下箭头翻行
- PageUp、PageDown翻页
- 输入 /关键字 可以高亮显示字符串,n跳转下一个关键字处,N跳转上一个
- q退出less
less 文件名
head
# 显示文件开始的20行
head -n 20
# 默认显示10行
head
tail
# 显示文件结尾的n行
tail -n 行数
入 /关键字 可以高亮显示字符串,n跳转下一个关键字处,N跳转上一个
- q退出less
less 文件名
head
# 显示文件开始的20行
head -n 20
# 默认显示10行
head
tail
# 显示文件结尾的n行
tail -n 行数