日常工作中总会设计到超过1G以上文件的下载或者上传,由于单文件scp是有速度上限的,将其分卷压缩,然后再scp就简单快速多了。下面记录一下过程。

分卷压缩

举例:将10G大小的log文件2017.log打包压缩并分割成多个100m的文件

# 分卷压缩gz
# tar zcf - 2017.log |split -d -b 100m - logs.tar.gz.
# 生成文件: logs.tar.gz.00 logs.tar.gz.01
# 分卷压缩bz2
# tar jcf - 2017.log |split -d -b 100m - logs.tar.bz2.
# 生成文件: logs.tar.bz2.00 logs.tar.bz2.01

最后要提醒但是那两个”-”不要漏了,那是tar的ouput和split的input的参数

合并分卷解压缩

# 解压gz分卷
# cat logs.tar.gz* | tar zx
# 解压bz2分卷
# cat logs.tar.gz* | tar jx

tar 命令简述

参数:
-j : 通过bzip2进行压缩\解压文件*.tar.bz2
-z : 通过gzip进行压缩\解压文件*.tar.gz
-c : 新建打包文件,可搭配-v来查看过程中被打包的文件名
-t : 查看打包文件的内容有哪些文件名
-x : 解压打包文件.
-v : 在压缩/解压过程中,显示正在处理的文件名
-f : -f后面接被处理的文件名
-C(大写) : 后接目录
-p : 保留备份数据的原本权限与属性
-P :    保留绝对路径,即允许备份数据中含有根目录存在的目录(危险)
常用:欲压缩或打包的文件或目录(/*)
bzip2压缩命令:tar -jcv -f boot.tar.bz2 /boot
gzip压缩命令 :tar -zcv -f boot.tar.gz  /boot
bzip2查看命令:tar -jtv -f /dir/*.tar.bz2
gzip 查看命令:tar -ztv -f /dir/*.tar.gz
bzip2解压缩命令:tar -jxv -f /dir/*.tar.bz2 -C 欲解压缩的目录
gzip解压缩命令 :tar -zxv -f /dir/*.tar.gz 欲解压缩的目录
特殊:
备份重要的系统数据,包括其完整的权限(-p参数):     tar -jcvp -f /root/etc.tar.bz2 /etc
只解压压缩文件内的其中一个文件:                          tar -jxv -f /root/etc.tar.bz2 etc/shadow
打包目录,但不含该目录下的某些文件(--exclude):
tar -jcv -f /root/system.tar.bz2  --exclude=root/etc* --exclude=root/system.tar.bz2 /etc /root
仅备份比某个时刻还要新的文件:
备份    :tar -jcv -f /root/etc.newer.2011.02.16.tar.bz2 –newer-mtime='2011-02-16' /etc/*
查看备份:tar -jtv -f etc.newer.2011.02.16.tar.bz2
注意:在备份文件的时候也备份它的父目录

split 命令简述

功能说明:切割文件。
语法:split [--help][--version][-<行数>][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名]
补充说明:split可将文件切成较小的文件,预设每1000行会切成一个小文件。
参数:
-<行数>或-l<行数> 指定每多少行就要切成一个小文件。
-b<字节> 指定每多少字就要切成一个小文件。支持单位:m,k
-C<字节> 与-b参数类似,但切割时尽量维持每行的完整性。
–help 显示帮助。
–version 显示版本信息。
[输出文件名] 设置切割后文件的前置文件名,split会自动在前置文件名后再加上编号。
例子:
1.按100KB的测试文件拆分

# split -b 10k date.file
# ls
date.file xaa xab xac xad xae xaf xag xah xai xaj

件被分割成多个带有字母的后缀文件,如果想用数字后缀可使用-d参数,同时可以使用-a length来指定后缀的长度:

# split -b 10k date.file -d -a 3
# ls
date.file x000 x001 x002 x003 x004 x005 x006 x007 x008 x009

为分割后的文件指定文件名的前缀:

# split -b 10k date.file -d -a 3 split_file
# ls
date.file split_file000 split_file001 split_file002 split_file003 split_file004 split_file005 split_file006 split_file007 split_file008 split_file009

2.按行数拆分

# split -l 10 date.file

linux shell tar 分卷压缩与解压相关推荐

  1. linux tar.xz 解压命令,Linux下.tar.xz文件的解压教程详解

    前言 对于xz这个压缩相信很多人陌生,但xz是绝大数linux默认就带的一个压缩工具,xz格式比7z还要小. 最近在下载某个源码包的时候遇到的这种压缩格式,乘此机会分享一下xz的压缩与解压方法. 安装 ...

  2. ubuntu下分卷压缩及解压分卷压缩文件

    来自:原文地址 分卷压缩及解压分卷压缩文件 一 .使用rar 1.分卷压缩 ubuntu下没有默认安装rar,可以通过 sudo apt-get install rar,sudo apt-get in ...

  3. linux中常用的压缩、解压命令详解

    不管在windows中还是在linux中,我们会经常看到各种压缩的文件,此刻我们需要使用就得解压,在这就介绍介绍linux中解压.压缩的命令. 在做实验之前,我们先创建几个文件,大小都是100M,方便 ...

  4. Linux下文件的压缩与解压

    1. 文件压缩 (1)将file1 压缩为file1.tar tar -cvf file1.tar file1 (2)将file1文件压缩为file1.tar.gz tar -czf file1.ta ...

  5. Ubuntu(Linux)下常用的压缩与解压指令合集

    简介 在ubuntu使用过程中,常常会遇到文件解压和压缩的操作,然而压缩的种类又那么多,参数也不少,常常记不住,这里归纳总结一下. .tar 文件 必须的参数:(3个参数不能共存) -c :创建压缩文 ...

  6. Linux下常用的压缩与解压命令

    转载地址:http://blog.csdn.net/zhouzme/article/details/20014659 .tar (注:tar是打包,不是压缩!) 解包: tar xvf FileNam ...

  7. Linux 中的文件压缩与解压

    .tar tar xvf FileName.tar # 解压 tar cvf FileName.tar DirName # 压缩 .gz gunzip FileName.gz # 解压 gzip -d ...

  8. 使用Ionic.Zip压缩、分卷压缩、解压文件

    分卷压缩使用方法: int iMinLength = 100;//最小压缩包单位(100M)ZipHelper.Compress("../../../xxx.xx", " ...

  9. Linux文件夹解密压缩与解压

    1.加密压缩与解压     假设你有要加密的文件夹的名称为hello, 需要加密压缩成hello.tar.gz, 则可以如下命令: tar -czvf - hello | openssl des3 - ...

最新文章

  1. 【Android】ActionBar的使用(1)
  2. 干掉Postman?测试接口直接生成API文档,这工具强烈推荐!
  3. jQuery面试题-区别mouseover和mouseenter的不同之处(看了也许对你有好处)
  4. vivo6.0系统怎么样不用root激活XPOSED框架的方法
  5. 中国***产业链正在形成 ***今年收入可超百亿
  6. DHCP中继原理和配置(含常见配置配置误区)
  7. 纽约出租车计费问题:数据清洗与初探
  8. VML 编程之--------《VML极道教程》原著:沐缘华
  9. ARM开发7.3.2 基础实训( 2 ) 单个按键的输入系统设计( 2)--LPC21XX
  10. 解决桌面右键无NVIDIA控制面板选项
  11. 51单片机前言知识总结
  12. 【EDA】Mutisim基于Multisim的带通滤波器仿真设计实验
  13. 计算机无法读光盘,win10系统无法读取光盘如何解决 win10系统读取光盘失败的解决方法...
  14. onvif 添加H265开发流程
  15. 界面原型设计——在线教育app
  16. 苹果设备上的无损音乐alac
  17. 数据中心机房效果图鉴赏
  18. 和第三方接口对接总结
  19. Hydration failed because the initial UI does not match what was rendered on the server
  20. 《剑指offter》第十九题(js)

热门文章

  1. 湾区和西雅图的码农,谁过得更爽?
  2. PPT基础知识和快捷键的应用
  3. 零基础能学好UI设计吗 相关学习规划是什么
  4. 三坐标检测之测头校验的目的
  5. stm32Cubemx:串口的空闲中断和接收中断------stm32f407zgt6
  6. 利用InstallAnywhere 打包java程序
  7. Linux操作系统引导过程
  8. 哈工大计算机系统大作业-程序人生-Hello’s P2P
  9. 微博 KOL 投放指南(八):从选号到投放,其中的坑你避开了吗?
  10. HTTP的响应状态码