`

ubuntu tar命令

 
阅读更多

# zip -r archive_name.zip directory_to_compress    //压缩一个目录

# unzip archive_name.zip

# tar -tvf archive_name.tar    //查看内容

# tar -xvf archive_name.tar -C /tmp/extract_here/

# tar -zxvf archive_name.tar.gz -C /tmp/extract_here/

# tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/

 

=====================

 

格式: tar 选项 文件目录列表
功能: 对文件目录进行打包备份
选项:
-c 建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
可以这样记忆,创建新的文件是c,追加在原有文件上用r,从文件中解压出用x

-O 将文件解开到标准输出

-v 处理过程中输出相关信息

-f 对普通文件操作           ---似乎一直都要用f,不然的话,可能会不显示
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩

-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!

-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!


例如:
1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用
tar czvf this.tar.gz ./*.txt

2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
tar xzvf this.tar.gz ./
-------------
例子1:
root:~$ tar czvf this.tar.gz ./*.txt
./linux代码.txt                             ------这里显示压缩的文件是什么,这里只有一个文件

例子2:
这时候在/home/along出现一个this.tar.gz文件,双击打开可以看见里面的文件或者用命令查看。
查看文件内容
root:~$ tar ztf this.tar.gz
./linux代码.txt                            ----显示文件内的是什么内容
# 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,
# 就得要加上 z 这个参数了!这很重要的!longshuai测试到无论是否加z都是一样的结果

例子3:
下面解压
root:~$ tar xzfv this.tar.gz  ./  -- 后面的./ 应该表示在文件的当前目录(./其实也可以不要的)
./linux代码.txt                             ---显示解压出来的文件

要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp


例子4:
下面介绍怎么对文建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
可以这样记忆,创建新的文件是c,追加在原有文件上用r,从文件中解压出用x

-O 将文件解开到标准输出

-v 处理过程中输出相关信息

-f 对普通文件操作           ---似乎一直都要用f,不然的话,可能会不显示
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩

-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!

-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!


例如:
1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用
tar czvf this.tar.gz ./*.txt

2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
tar xzvf this.tar.gz ./
-------------
例子1:
root:~$ tar czvf this.tar.gz ./*.txt
./linux代码.txt                             ------这里显示压缩的文件是什么,这里只有一个文件

例子2:
这时候在/home/along出现一个this.tar.gz文件,双击打开可以看见里面的文件或者用命令查看。
查看文件内容
root:~$ tar ztf this.tar.gz
./linux代码.txt                            ----显示文件内的是什么内容
# 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,
# 就得要加上 z 这个参数了!这很重要的!longshuai测试到无论是否加z都是一样的结果

例子3:
下面解压
root:~$ tar xzfv this.tar.gz  ./  -- 后面的./ 应该表示在文件的当前目录(./其实也可以不要的)
./linux代码.txt                             ---显示解压出来的文件

要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp


例子4:
下面介绍怎么对文件夹操作
把当前目录下的longshuai文件夹压缩到当前也目录
root:~$ tar cvf longshuai.tar  ./longshuai <==仅打包,不压缩!
./longshuai/
./longshuai/linux代码.txt

root:~$ tar -czvf longshuai.tar.gz ./longshuai <==打包后,用gzip压缩!
./longshuai/
./longshuai/linux代码.txt

root:~$ tar -jcvf longshuai.tar.bz2 ./longshuai  <==打包后,用bzip2压缩!
./longshuai/
./longshuai/linux代码.txt

# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~
# 上述指令在执行的时候,会显示一个警告讯息:
# 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定


例子5:
将longshuai.tar.gz 解压到  /home/along/文档  文件夹(PS当前目录是在/home/along下 )
root:~$ cd 文档     ---进入前目录下的文档目录
root:~/文档$ pwd
/home/along/文档
root:~/文档$ tar -xzvf  ../longshuai.tar.gz   --..表示上一级目录
./longshuai/
./longshuai/linux代码.txt
# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,
# 我先将工作目录变换到   /home/along/文档底下,并且解开  /home/along/longshuai.tar.gz ,
# 则解开的目录会在 /home/along/文档 /longshuai!

要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp   (后面的路径如果是压缩包压缩后存在的路径 就是说明要解压的文件,如果不是,则指定的是压缩后文件的存放路径)

例子6:
现创建一个文件
root:~/文档$ cd ..
root:~$ pwd
/home/along
root:~$ tar cvfz  new.tar.gz ./new
./new/
./new/tmp/
./new/tmp/longshuai2.txt
./new/linux代码.txt

例子7:
我现在要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp
./new/tmp/
./new/tmp/longshuai2.txt
这样就完成了new.tar.gz下tmp文件夹的解压

例子8:
将  /home/along/文档  内的所有文件备份下来,并且保存其权限!
root:~$ tar zcvfp  back.tar.gz ./文档
./文档/
./文档/a1/
./文档/a1/a2/
./文档/a1/a2/a3/
./文档/a1/a2/a3/a4/
./文档/test1/
./文档/test/
./文档/test/1
./文档/test/obj/
./文档/test/obj/Debug/
./文档/test/test.layout
./文档/test/bin/
./文档/test/bin/Debug/
./文档/test/test.cbp
./文档/test/main.cpp
# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

例子9:
在 /home 当中,比 2010/01/01 新的文件才备份
root:~$ tar -N '2010/01/01' -cvfz  back22.tar.gz ./文档
tar: Option --after-date: Treating date `2010/01/01' as 2010-01-01 00:00:00
tar: back22.tar.gz:无法 stat: 没有那个文件或目录
./文档/
./文档/a1/
./文档/a1/a2/
./文档/a1/a2/a3/
./文档/a1/a2/a3/a4/
./文档/test1/
./文档/test/
tar: ./文档/test/1:文件未改变;未输出
./文档/test/obj/
./文档/test/obj/Debug/
tar: ./文档/test/test.layout:文件未改变;未输出
./文档/test/bin/
./文档/test/bin/Debug/
tar: ./文档/test/test.cbp:文件未改变;未输出
./文档/test/main.cpp
tar: 由于前面延迟的错误而退出
出现问题,不知道怎么解决

例子10:
我要备份 /new, 但不要 /new/tmp文件夹
root:~$ tar -zcvf file.tar.gz ./new/ --exclude ./new/tmp
./new/
./new/ASasdas.txt建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
可以这样记忆,创建新的文件是c,追加在原有文件上用r,从文件中解压出用x

-O 将文件解开到标准输出

-v 处理过程中输出相关信息

-f 对普通文件操作           ---似乎一直都要用f,不然的话,可能会不显示
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩

-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!

-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!


例如:
1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用
tar czvf this.tar.gz ./*.txt

2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
tar xzvf this.tar.gz ./
-------------
例子1:
root:~$ tar czvf this.tar.gz ./*.txt
./linux代码.txt                             ------这里显示压缩的文件是什么,这里只有一个文件

例子2:
这时候在/home/along出现一个this.tar.gz文件,双击打开可以看见里面的文件或者用命令查看。
查看文件内容
root:~$ tar ztf this.tar.gz
./linux代码.txt                            ----显示文件内的是什么内容
# 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,
# 就得要加上 z 这个参数了!这很重要的!longshuai测试到无论是否加z都是一样的结果

例子3:
下面解压
root:~$ tar xzfv this.tar.gz  ./  -- 后面的./ 应该表示在文件的当前目录(./其实也可以不要的)
./linux代码.txt                             ---显示解压出来的文件

要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp


例子4:
下面介绍怎么对文件夹操作
把当前目录下的longshuai文件夹压缩到当前也目录
root:~$ tar cvf longshuai.tar  ./longshuai <==仅打包,不压缩!
./longshuai/
./longshuai/linux代码.txt

root:~$ tar -czvf longshuai.tar.gz ./longshuai <==打包后,用gzip压缩!
./longshuai/
./longshuai/linux代码.txt

root:~$ tar -jcvf longshuai.tar.bz2 ./longshuai  <==打包后,用bzip2压缩!
./longshuai/
./longshuai/linux代码.txt

# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~
# 上述指令在执行的时候,会显示一个警告讯息:
# 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定


例子5:
将longshuai.tar.gz 解压到  /home/along/文档  文件夹(PS当前目录是在/home/along下 )
root:~$ cd 文档     ---进入前目录下的文档目录
root:~/文档$ pwd
/home/along/文档
root:~/文档$ tar -xzvf  ../longshuai.tar.gz   --..表示上一级目录
./longshuai/
./longshuai/linux代码.txt
# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,
# 我先将工作目录变换到   /home/along/文档底下,并且解开  /home/along/longshuai.tar.gz ,
# 则解开的目录会在 /home/along/文档 /longshuai!

要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp   (后面的路径如果是压缩包压缩后存在的路径 就是说明要解压的文件,如果不是,则指定的是压缩后文件的存放路径)

例子6:
现创建一个文件
root:~/文档$ cd ..
root:~$ pwd
/home/along
root:~$ tar cvfz  new.tar.gz ./new
./new/
./new/tmp/
./new/tmp/longshuai2.txt
./new/linux代码.txt

例子7:
我现在要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp
./new/tmp/
./new/tmp/longshuai2.txt
这样就完成了new.tar.gz下tmp文件夹的解压

例子8:
将  /home/along/文档  内的所有文件备份下来,并且保存其权限!
root:~$ tar zcvfp  back.tar.gz ./文档
./文档/
./文档/a1/
./文档/a1/a2/
./文档/a1/a2/a3/
./文档/a1/a2/a3/a4/
./文档/test1/
./文档/test/
./文档/test/1
./文档/test/obj/
./文档/test/obj/Debug/
./文档/test/test.layout
./文档/test/bin/
./文档/test/bin/Debug/
./文档/test/test.cbp
./文档/test/main.cpp
# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

例子9:
在 /home 当中,比 2010/01/01 新的文件才备份
root:~$ tar -N '2010/01/01' -cvfz  back22.tar.gz ./文档
tar: Option --after-date: Treating date `2010/01/01' as 2010-01-01 00:00:00
tar: back22.tar.gz:无法 stat: 没有那个文件或目录
./文档/
./文档/a1/
./文档/a1/a2/
./文档/a1/a2/a3/
./文档/a1/a2/a3/a4/
./文档/test1/
./文档/test/
tar: ./文档/test/1:文件未改变;未输出
./文档/test/obj/
./文档/test/obj/Debug/
tar: ./文档/test/test.layout:文件未改变;未输出
./文档/test/bin/
./文档/test/bin/Debug/
tar: ./文档/test/test.cbp:文件未改变;未输出
./文档/test/main.cpp
tar: 由于前面延迟的错误而退出
出现问题,不知道怎么解决

例子10:
我要备份 /new, 但不要 /new/tmp文件夹
root:~$ tar -zcvf file.tar.gz ./new/ --exclude ./new/tmp
./new/
./new/ASasdas.txt件夹操作
把当前目录下的longshuai文件夹压缩到当前也目录
root:~$ tar cvf longshuai.tar  ./longshuai <==仅打包,不压缩!
./longshuai/
./longshuai/linux代码.txt

root:~$ tar -czvf longshuai.tar.gz ./longshuai <==打包后,用gzip压缩!
./longshuai/
./longshuai/linux代码.txt

root:~$ tar -jcvf longshuai.tar.bz2 ./longshuai  <==打包后,用bzip2压缩!
./longshuai/
./longshuai/linux代码.txt

# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~
# 上述指令在执行的时候,会显示一个警告讯息:
# 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定


例子5:
将longshuai.tar.gz 解压到  /home/along/文档  文件夹(PS当前目录是在/home/along下 )
root:~$ cd 文档     ---进入前目录下的文档目录
root:~/文档$ pwd
/home/along/文档
root:~/文档$ tar -xzvf  ../longshuai.tar.gz   --..表示上一级目录
./longshuai/
./longshuai/linux代码.txt
# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,
# 我先将工作目录变换到   /home/along/文档底下,并且解开  /home/along/longshuai.tar.gz ,
# 则解开的目录会在 /home/along/文档 /longshuai!

要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp   (后面的路径如果是压缩包压缩后存在的路径 就是说明要解压的文件,如果不是,则指定的是压缩后文件的存放路径)

例子6:
现创建一个文件
root:~/文档$ cd ..
root:~$ pwd
/home/along
root:~$ tar cvfz  new.tar.gz ./new
./new/
./new/tmp/
./new/tmp/longshuai2.txt
./new/linux代码.txt

例子7:
我现在要解压new.tar.gz目录下的tmp文件夹
root:~$ tar xzvf  new.tar.gz ./new/tmp
./new/tmp/
./new/tmp/longshuai2.txt
这样就完成了new.tar.gz下tmp文件夹的解压

例子8:
将  /home/along/文档  内的所有文件备份下来,并且保存其权限!
root:~$ tar zcvfp  back.tar.gz ./文档
./文档/
./文档/a1/
./文档/a1/a2/
./文档/a1/a2/a3/
./文档/a1/a2/a3/a4/
./文档/test1/
./文档/test/
./文档/test/1
./文档/test/obj/
./文档/test/obj/Debug/
./文档/test/test.layout
./文档/test/bin/
./文档/test/bin/Debug/
./文档/test/test.cbp
./文档/test/main.cpp
# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

例子9:
在 /home 当中,比 2010/01/01 新的文件才备份
root:~$ tar -N '2010/01/01' -cvfz  back22.tar.gz ./文档
tar: Option --after-date: Treating date `2010/01/01' as 2010-01-01 00:00:00
tar: back22.tar.gz:无法 stat: 没有那个文件或目录
./文档/
./文档/a1/
./文档/a1/a2/
./文档/a1/a2/a3/
./文档/a1/a2/a3/a4/
./文档/test1/
./文档/test/
tar: ./文档/test/1:文件未改变;未输出
./文档/test/obj/
./文档/test/obj/Debug/
tar: ./文档/test/test.layout:文件未改变;未输出
./文档/test/bin/
./文档/test/bin/Debug/
tar: ./文档/test/test.cbp:文件未改变;未输出
./文档/test/main.cpp
tar: 由于前面延迟的错误而退出
出现问题,不知道怎么解决

例子10:
我要备份 /new, 但不要 /new/tmp文件夹
root:~$ tar -zcvf file.tar.gz ./new/ --exclude ./new/tmp
./new/
./new/ASasdas.txt

分享到:
评论

相关推荐

    ubuntu.tar

    安装过vim命令的纯净版ubuntu的镜像文件,用于离线docker pull镜像

    Ubuntu-Commend.pdf.tar.gz_Ubuntu!_ubuntu pdf

    Ubuntu命令大全,包括了大部分的ubuntu常用命令。

    Ubuntu16.04离线安装软件-离线安装包vsftpd-3.0.3

    1、上传至指定文件夹后,执行命令 tar -zxvf vsftpd_3.0.3.tar.gz 进行解压 2、然后执行命名 dpkg -i vsftpd_3.0.3-3ubuntu2_amd64.deb 进行安装 3、进行ftp配置即可,不动配置的可看我上一博客...

    Ubuntu 16.04/18.04裸系统离线安装docker环境

    docker-engine_17.05.0_ce-0_ubuntu-trusty_amd64.deb libgcrypt20_1.8.1-4ubuntu1_amd64.deb libltdl7_2.4.6-2_amd64.deb libsystemd-journal0_204-5ubuntu20_amd64.deb 4 个文件放到同一目录 2. 运行命令...

    ubuntu安装和删除mysql

    ubuntu安装和删除mysql,只要熟悉ubuntu命令来操作此系统。

    Ubuntu22.04 软件安装包

    资源来源于自己部署沙箱时使用的,使用的是Ubuntu22.04.1版本的系统 ps: 因为安装过程涉及到依赖问题,尽可能使用下面的命令安装) 下载后解压及无错安装命令: sudo tar -xvf softbag.tar -C /var/cache/apt/...

    ubuntu网卡驱动安装包

    7.如果第6步没有检测到网卡,尝试使用如下命令插入驱动模块到内核: insmod /lib/modules/3.16.0-30-generic/updates/drivers/net/ethernet/intel/ethernet/intel/e1000e/e1000e.ko,然后重启ubuntu,就可以上网了。

    ubuntu 命令1

    1. 备份命令: tar vzcpf /media/wei/Windows/linux_backup/ubuntu_`date +%Y%m%d_%H`.tar.

    SSH离线安装包.tar

    ubuntu系统下的SSH deb离线安装包,有需要的可以下载,含依赖,压缩包里的deb文件批量安装命令:sudo dpkg -i *.deb

    Linux(Ubuntu 18.04) 罗技(logitech) G29 游戏方向盘数据解析(支持自定义开发)

    因项目需要,将在ubuntu下扩展产品,实现windows/linux下支持远程驾驶 依次执行如下命令 apt-get install jstest-gtk apt-get install cmake apt-get install sigc++ apt-get install gtkmm-2.4 apt-get install ...

    navicat120_mysql_en_x64.tar.gz

    tar zxvf navicat112_mysql_cs_x64.tar.gz 进入解压的目录,运行如下命令 ./start_navicat 问题一:中文乱码 解决:打开start_navicat文件 将export LANG="en_US.UTF-8"改为export LANG="zh_CN.UTF-8" 问题二:试用...

    ubuntu 扩展库的安装

    方法1在ubuntu下是最简单的,命令执行完会告知.so所在目录 II. 配置php.ini 打开php.ini,指定extension_dir目录,如果extension_dir = '/usr/lib',那么接下来把生成的.so文件(如curl.so)复制到/usr/lib目录...

    Sublime Text 2.0.1.tar.bz2 [For Linux/Ubuntu]

    Sublime Text 是众所周知的神器,无奈伟大得局域网访问不了主页和下载页面(碰运气的请试:http://www.sublimetext.com/),特免费贡献Sublime Text 在 Linux/Ubuntu 环境下的包文件 (绿色软件包) ---------------...

    Sublime Text 2.0.2.tar.bz2 [For Linux/Ubuntu][32bit+64bit双版本]

    $ tar xjf Sublime\ Text\ 2.0.2.tar.bz2 $ cd Sublime\ Text\ 2 $ ./sublime_text 如果嫌麻烦,可以添加环境变量到PATH (例如): $ export PATH=~/Tools/SublimeText2.0.2:$PATH $ sublime_text 如果嫌添加...

    ubuntu-cheatsheet:不懂Linux的人的Ubuntu命令

    适用于不懂Linux的人的Ubuntu命令 系统管理 重新启动机器: sudo shutdown -r now 用户管理 创建一个新用户: useradd {username} 磁盘管理 检查可用卷上的磁盘空间: df -h命令 检查当前工作目录中文件夹的大小: ...

    Ubuntu vim配置(很简单)

    下载vimconfig.tar.tgz,将文件拷贝到ubuntu, 执行下面命令: tar zxvf vimconfig.tar.tgz cd vimconfig cp .* ~/ -rvf 部分配置情况: "-------------TagList--------------- "设置ctags路径 let Tlist_Ctags_Cmd ...

    离线安装ntp服务和ntpdate命令

    离线安装ntp服务和ntpdate命令

    ubuntu 下安装32位库 ia32-libs方法

    接着对“ia32-libs.tar.gz” 进行解压,解压完成之后进入相应的目录,此时你会发现有三个deb文件,执行以下命令对三个安装包进行安装。 sudo dpkg -i lib32asound2_1.0.25-3ubuntu3.2_amd64.deb sudo dpkg -i lib32...

    qcom.tar.gz_QT串口通信_linux QT 串口_qt串口_ubuntu 串口 QT_ubuntu的qt串口

    基于Linux系统 ubuntu平台qt的串口通信工具

Global site tag (gtag.js) - Google Analytics