Linux命令分析:tar
来源:互联网 发布:wave动作数据mmd 编辑:程序博客网 时间:2024/05/27 19:26
用途:将文件或目录打包成一个.tar存档文件,并调用相关命令压缩或解压
用法:tar 选项... 文件...
tar命令后面至少要接一个参数,参数后指定要处理的文件或目录,如果指定一个目录则该目录下所有子目录及文件都将被打包
选项:
-A --catenate,--concatenate 将新生成的存档添加到现有存档文件
-c --create 建立新的存档文件
-d --diff,--compare 没什么用
--delete 删除tar包中的某个文件
-r --append 附加文件到存档文件的结尾
-t --list 列出存档中文件的目录
-u --update 仅将较新的文件附加到tar文件
-x --extract,--get 从tar包中展开文件
注意:c,x,t三个参数同时只能出现一个
-f --file=ARCHIVE 指定要处理的存档文件,在有多个选项时,f要放在最后,后面要立刻接目标存档文件
-j --bzip2 调用bzip2命令压缩tar包
-J --xz 调用xz命令压缩tar包
-p --preserve-permissions 展开并保留所有文件信息(root用户默认)
-v --verbose 详细显示处理的文件
-z --gzip 调用gzip命令压缩tar包
-g --listed-inccremental=FILE 后接新的GNU格式的增量备份,常用于做快照
-G --incremental 处理原有的增量备份
--level=NUMBER 创建增量存档时指定dump级别
-n --seek 存档具有seekable属性
-k --keep-old-files 保存现有文件,从存档中展开时不覆盖,作为错误处理
--keep-newer-files 不覆盖比存档中更新的文件
--no-overwrite-dir 不覆盖现有目录
--remove-files 在文件添加到存档后删除原文件
-W 写入存档后进行校验
-O 将文件展开到标准输出
-m 档案中恢复的文件,不更改mtime
-force-local 强制使用本地存档,即使存在克隆
-M 建立多个存档,存放在不同卷上
-a --auto-compress 通过指定tar文件的后缀自动判断要调用哪个命令来压缩
-Z 用compress命令压缩
-C --directory=DIR 转到指定目录
-h 跟踪动态链接,打包的是所指向的文件
-N --newer=DATE-OR-FILE 只存储时间较新的文件
-P --absolute-names 不去掉文件名前面的/
-T --files-from=FILE 从FILE中获得要展开或创建的文件名
-X --exclude-from=FILE 从FILE中获得要排除的文件名
-R 显示存档中每个文件的块信息
-w 每个操作都要确认
典型用法:
1.将目录下的文件打包
tar -cvf /tmp/backup.tar /var/log # 将/var/log下的日志全部打包到/tmp/backup.tar文件里,不压缩
tar -zcvf /tmp/backup.tar.gz /var/log # 打包后,用gzip压缩
tar -jcvf /tmp/backup.tar.bz2 /var/log # 打包后,用bzip2压缩
2.将多个文件打包成一个tar文件
tar -cvf backup.tar 文件1 文件2 文件3...
tar --exclude /var/log/maillog -cvf backup.tar /var/log/* /etc/passwd # 备份日志和用户名单到backup.tar,但排除mail日志
3.查看tar包内有哪些文件
tar -tvf backup.tar
tar -ztvf backup.tar.gz
4.将tar包解压缩
tar -xvf /tmp/backup.tar -C /root # 将tar包展开到指定目录,如不指定则到当前目录
tar -zxvf /tmp/backup.tar.gz
tar -zxvf /tmp/backup.tar.gz syslog # 只将tar包中的syslog这一个文件解压出来
5.删除tar包中的某个文件
tar --delete -f /tmp/backup.tar maillog # 将tar包中的maillog删除,但此--delete不能删除压缩过的tar包中的文件
6.将/etc目录里的所有文件备份下来,并保存权限
tar -zxvpf /tmp/etc.tar.gz /etc
7.只备份时间较新的文件
tar -N '2018/01/01' -zcvf /etc/init.d
8.更改tar包
tar -rvf backup.tar /etc/sysconfig # 将sysconfig文件添加到backup.tar里
tar -xvf backup.tar sysconfig # 将sysconfig文件取出来,tar包后面不接文件名则解出整个tar包的文件
9.创建增量快照
第一次对test目录做完整备份,同时-g参数做备份快照
随后在目录下新建文件test/4,修改/test/1的内容
再根据backup.snap这个备份快照对test目录做增量备份,备份文件为backup1.tar.gz,该文件里记录的是第一次完整备份后的改动
- Linux命令分析:tar
- linux之tar命令参数分析
- Linux命令-tar命令
- linux tar命令
- linux tar命令
- linux tar命令
- linux tar 命令
- linux tar命令
- linux tar命令
- linux tar命令
- linux tar命令 (一)
- linux tar命令 (二)
- Linux:tar命令详解
- linux-tar命令
- linux解压 tar命令
- linux解压 tar命令
- linux解压 tar命令
- linux 命令TAR
- jvm系列(七):jvm调优-工具篇
- 记HTML5 <a> 标签的一个小坑
- kettle设置数据库连接变量、js脚本设置变量、数据流合并、设置分支等
- mycat2.0配置文件 datasource.yml说明
- 作业
- Linux命令分析:tar
- android studio 常用快捷键
- 众里寻他千百度 哪家单位让你再见如初?这里上市公司、股份集团任你选 | 大数据周聘汇
- 马云要让“千亿达摩院”具备盈利能力,能做到吗?
- 【案例】中国银联、光大银行基于区块链的可信电子凭证系统
- Expected one result (or null) to be returned by selectOne(), but found: 4
- Linux中表示“时间”的结构体和相关函数
- C#生成唯一值的方法汇总
- 根据电机位置对混合动力汽车的定义