Linux里面归档命令是什么? linux中对文件进行归档的命令为

作者&投稿:沙璐 (若有异议请与网页底部的电邮联系)

题主你好,

linux中归档命令是tar.

理解归档命令:  所谓"归档"用大白话来说就是"打包".

如我有一个文件夹叫test, 里面有1-8共8个文件:

我现在要对test文件夹的所有或部分内容进行归档(打包):

    语法:  tar cf 自定义的归档文件名.tar 文件名或文件夹名

我想要将test目录下的所有文件进行归档,归档后的文件名为all.tar:

    tar cf all.tar .

可以看到all.tar这个归档文件已经生成了.

我们还可以对部分文件进行归档,如我只归档1-4这四个文件:

    tar cf 1-4.tar 1 2 3 4

-----

我用打包来描述归档了,好理解一些, 既然上面有打包, 就相应有解包, 命令还是tar,只是参数不同:

我先将1-8这8个文件都删了,只留两个tar文档做实验:

我先将1-4.tar这个包解开:

    tar xf 1-4.tar

可以看到1-4这四个文件都被解压出来了.我们再把1-4给删掉,试试解压all.tar这个包:

    tar xf all.tar

可以看到1-8这8个文件都解压出来了.

写在最后:

归档用的最多的原因应该就是管理和传输方便一些, 从管理上来说, 如我这一个文件夹里是100首歌曲,则打包后命名为music_100.tar,这样你一看到这个包名就知道里面是100首歌,此时你想给这100首歌换个位置,直接把这个文件移动到其它文件夹中即可, 而不用去移动那100个歌曲文件. 传输上也一样, 我想把这100首歌传给朋友,如果使用归档文件的话, 传一个就行了,否则还要传100个.

另外,上面解释归档时,其实很笼统, 有很多细节没有讲到, 如果题主想要进一步的理解其它功能,可以使用tar --help 或man tar 或info tar等等命令看看它的详细文档.

=====

希望可以帮到题主, 欢迎追问



Linux里面归档命令是tar
详细内容如下:
1、tar 打包压缩
1)【打包】 为什么要打包,压缩?
-zcvf 打包组合 zcf
z 压缩(gzip压缩)
c 创建
v 显示过程
f 针对文件
语法:
命令 选项
tar zcf 【压缩包的名字.tar.gz】 【要打包的东西】
装东西的筐 苹果

练习1:把/etc/目录打包到/opt下面。
ls -d /etc #检查有没有要打包的目录
cd / #切换到打包目录的上一级
tar zcf /opt/etc.tar.gz ./etc

执行过程:
[root@oldboy ~]# cd /
[root@oldboy /]# tar zcvf /opt/etc.tar.gz ./etc/
[root@oldboy /]# ls /opt/
etc etc.tar.gz services

练习2:把/usr/local目录打包到/tmp下面。
[root@oldboy /]# ls -ld /usr/local/
drwxr-xr-x. 12 root root 131 5月 7 2021 /usr/local/
[root@oldboy /]# cd /usr
[root@oldboy usr]# tar zcf /tmp/local.tar.gz ./local/

v 显示过程 工作中和领导汇报工作。

关键:
1)结果:赚100万。
2)过程:怎么赚的100万?

2)【查看包里内容】
t 查看包里内容
tar tf 包名
[root@oldboy usr]# tar tf /tmp/local.tar.gz

3)【解包】
组合zxvf,缩写xf
x 解压
cd /opt
tar zxvf etc.tar.gz #解压到了当前目录
tar zxf etc.tar.gz
tar xf etc.tar.gz

-C 指定路径解压
[root@oldboy opt]# tar xf etc.tar.gz -C /home/oldboy/
[root@oldboy opt]# ls /home/oldboy/

-p 保持属性(zcfp)

-j 通过bzip2命令压缩或解压(非常少了)
tar jcvf 包名.tar.bz2 包名

[root@oldboy opt]# tar jcvf /tmp/a.tar.bz2 /etc/hosts #打包实践
tar: 从成员名中删除开头的“/”
/etc/hosts
[root@oldboy opt]# ls /tmp/
a.hosts a.tar.bz2 etc local.tar.gz services
[root@oldboy opt]# cd /tmp/
[root@oldboy tmp]# tar zxvf a.tar.bz2

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
两种解压方法:
[root@oldboy tmp]# tar jxvf a.tar.bz2
etc/hosts
[root@oldboy tmp]# tar xf a.tar.bz2 #gzip,bzip统一解压方法。

排除打包--exclude=
tar zcvf /tmp/pai.tar.gz ./oldboy/ --exclude=file1
命令 参数 包名 目录 排除的文件

环境准备
[root@oldboy tmp]# mkdir /oldboy -p
[root@oldboy tmp]# cd /oldboy/
[root@oldboy oldboy]# ls
[root@oldboy tmp]# mkdir /oldboy -p
[root@oldboy tmp]# cd /oldboy/
[root@oldboy oldboy]# ls
[root@oldboy oldboy]# touch file{1..5}
[root@oldboy oldboy]# ls
file1 file2 file3 file4 file5
[root@oldboy oldboy]# cd ../

练习排除打包
排除file1
[root@oldboy /]# tar zcvf /tmp/pai.tar.gz ./oldboy/ --exclude=file1
./oldboy/
./oldboy/file2
./oldboy/file3
./oldboy/file4
./oldboy/file5
排除file1到file3 ###--exclude=file{1..3}
[root@oldboy /]# tar zcvf /tmp/pai.tar.gz ./oldboy/ --exclude=file{1..3}
./oldboy/
./oldboy/file4
./oldboy/file5

指定要排除的文件### --exclude=file{1,3,5}
[root@oldboy /]# tar zcvf /tmp/pai.tar.gz ./oldboy/ --exclude=file{1,3,5}
./oldboy/
./oldboy/file2
./oldboy/file4
###--exclude=file1 --exclude=file2
[root@oldboy /]# tar zcvf /tmp/pai.tar.gz ./oldboy/ --exclude=file1 --exclude=file2
./oldboy/
./oldboy/file3
./oldboy/file4
./oldboy/file5

从文件中排除打包--exclude-from(-X)

建立排除的文件paichu.log,内容就是排除的文件名
cat >paichu.log<<EOF
file1
file5
EOF

[root@oldboy /]# cat paichu.log
file1
file5
[root@oldboy /]# tar zcvfX /tmp/pai.tar.gz paichu.log ./oldboy/
./oldboy/
./oldboy/file2
./oldboy/file3
./oldboy/file4

tar zcvfX /tmp/pai.tar.gz paichu.log ./oldboy/
存储排除文件名的文件

-h 打包软链接
/etc/rc.local是软链接文件,指向真实路径/etc/rc.d/rc.local
默认打包的时候,只打包了软链接文件。
tar zcvf /backup/rc.local_1.tar.gz /etc/rc.local

【而加上-h打包,可以打包软链接对应的真实文件】
[root@oldboy etc]# tar zcvfh /backup/rc.local_1.tar.gz /etc/rc.local
tar: 从成员名中删除开头的“/”
/etc/rc.local
[root@oldboy etc]# cd /backup/
[root@oldboy backup]# tar xf rc.local_1.tar.gz
[root@oldboy backup]# cat etc/rc.local
#!/bin/bash
touch /var/lock/subsys/local

Linux里面归档和压缩的区别是什么?~

归档:把多个文件组合到一个文件中。归档好处是,把文件数目变少,有利于降多个文件作为电子邮件附件发送,以及备份文件。
压缩:利用算法将文件有损或无损地处理,以达到保留最多文件信息,而令文件体积变小。压缩好处就是节约硬盘空间,以及减小电子邮件附件的大小,提高传输效率。
归档工具:tar cpio
tar是Unix和类Unix系统上的打包工具,可以将多个文件合并为一个文件,最初的设计目的是将文件备份到磁带上(tape archive),因而得名tar。
压缩工具:zip,gzip,uncompress,bzip2
tar中主要用到的参数
c 创建归档
x 提取归档
t 测试或列出归档内容
v 显示详细信息
f 指出要创建或提取的归档文件名称
z 使用gzip压缩类型
j 使用bz2压缩类型
r 追加
gzip :
#gzip filename //压缩一个文件,但是压缩后原文件会被删除
#gunzip filename.gz //解压后.gz的文件会被删除
#gzip -d filename.gz //相当于命令gunzip file.gz
#gzip -c filename >> filename.gz //用来实现即压缩原文件又保留原文件
#gzip -n filename //自定义压缩级别
#zcat filename.gz //不解压缩的情况下查看压缩文件的内容
bzip:
#bzip2 -k filename //压缩后保留原文件
#bzip2 -k filename.bz2 //解压缩是保留原文件
#bzcat filename.bz2 //不用解压缩直接查看压缩文件内容
bzip也是只能对单个文件压缩,不能压缩目录
zip :可以同时归档并且压缩
#zip message.zip file1 file2 file3 //同时把几个文件压缩在一个文件里面
zip这个工具可以对目录进行压缩,压缩后的名字可以自己指定

linux中对文件进行归档的命令为tar
tar命令
[root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 ....
参数:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在!
因为不可能同时压缩与解压缩。
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
   例如使用『 tar -zcvfP tfile sfile』就是错误的写法,要写成
   『 tar -zcvPf tfile sfile』才对喔!
-p :使用原文件的原来属性(属性不会依据使用者而变)
-P :可以使用绝对路径来压缩!
-N :比后面接的日期(yyyy/mm/dd)还要新的才会被打包进新建的文件中!
--exclude FILE:在压缩的过程中,不要将 FILE 打包!


范例:
范例一:将整个 /etc 目录下的文件全部打包成为 /tmp/etc.tar
[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!
[root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
[root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
# 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
# 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
# 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~
# 上述指令在执行的时候,会显示一个警告讯息:
# 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定。

范例二:查阅上述 /tmp/etc.tar.gz 文件内有哪些文件?
[root@linux ~]# tar -ztvf /tmp/etc.tar.gz
# 由於我们使用 gzip 压缩,所以要查阅该 tar file 内的文件时,
# 就得要加上 z 这个参数了!这很重要的!

范例三:将 /tmp/etc.tar.gz 文件解压缩在 /usr/local/src 底下
[root@linux ~]# cd /usr/local/src
[root@linux src]# tar -zxvf /tmp/etc.tar.gz
# 在预设的情况下,我们可以将压缩档在任何地方解开的!以这个范例来说,
# 我先将工作目录变换到 /usr/local/src 底下,并且解开 /tmp/etc.tar.gz ,
# 则解开的目录会在 /usr/local/src/etc 呢!另外,如果您进入 /usr/local/src/etc
# 则会发现,该目录下的文件属性与 /etc/ 可能会有所不同喔!

范例四:在 /tmp 底下,我只想要将 /tmp/etc.tar.gz 内的 etc/passwd 解开而已
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -zxvf /tmp/etc.tar.gz etc/passwd
# 我可以透过 tar -ztvf 来查阅 tarfile 内的文件名称,如果单只要一个文件,
# 就可以透过这个方式来下达!注意到! etc.tar.gz 内的根目录 / 是被拿掉了!

范例五:将 /etc/ 内的所有文件备份下来,并且保存其权限!
[root@linux ~]# tar -zxvpf /tmp/etc.tar.gz /etc
# 这个 -p 的属性是很重要的,尤其是当您要保留原本文件的属性时!

范例六:在 /home 当中,比 2005/06/01 新的文件才备份
[root@linux ~]# tar -N '2005/06/01' -zcvf home.tar.gz /home

范例七:我要备份 /home, /etc ,但不要 /home/dmtsai
[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc
范例八:将 /etc/ 打包后直接解开在 /tmp 底下,而不产生文件!
[root@linux ~]# cd /tmp
[root@linux tmp]# tar -cvf - /etc | tar -xvf -

Linux tar打包命令详解
答:在Linux系统中,最常用的归档(打包)命令是tar,它可以将许多文件一起保存到单个磁带或磁盘上进行归档。而且,这个命令还可以从存档文件中还原出需要的文件,这是打包的逆过程,叫做解包。当 tar 命令用于打包操作时,该命令的...

Linux实用命令有哪些?
答:2.6将/home/studl/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此存到/home目录下,实现此任务的tar命令格式***__***2.7 ping100个包的命令——2.8 linux下,解压缩bz2格式文件的命令是**_**2.9 linux下,查看网络连接状态...

Linux中tar的命令
答:tar 归档+压缩 语法:tar czvf newfile.tar.gz SOURCE 语法:tar czvf 压缩后的文件名(tar.gz tar.bz2) 需要压缩的文件或目录 常用参数:-z, --gzip 以gzip方式压缩 扩展名: tar.gz -j : 以bz2方式压缩的...

linux系统中tar命令使用方法
答:简单介绍下linux系统中tar命令使用方法,有举例说明。打包当前目录下的所有后缀为.log的文件和一个box目录(tar包)。把当前目录下所有后缀名为.log的文件打包并压缩(tar.gz包)。之后再进行解压缩和解包。创建 tar.bz2 包...

Linux里面打包和压缩区别是什么?
答:采用压缩工具对文件进行压缩,生成的文件称为压缩包,该文件的体积通常只有原文件的一半甚至更小。需要注意的是,压缩包中的数据无法直接使用,使用前需要利用压缩工具将文件数据还原,此过程又称解压缩。Linux下,常用归档命令...

Linux命令有哪些?Linux常用命令大全
答:接下来,就来看看xp系统下载编辑为各位带来的Linux常用命令大全吧! Linux常用命令大全100条: 1,echo “aa” 》 test.txt 和 echo “bb” 》》 test.txt //》将原文件清空,并且内容写入到文件中,》》将内容放到...

linux,unix常用基本命令
答:4.Linux管道 将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。例:grep -r "close" /home/* | more 在home目录下所有文件中查找,包括close的文件...

关于Linux操作系统的一些命令是什么?
答:下面是网友整理的20个最常用的Linux命令:1. ls命令 ls命令是列出目录内容(List Directory Contents)的意思。运行它就是列出文件夹里的内容,可能是文件也可能是文件夹。2. lsblk命令 "lsblk"就是列出块设备。除了RAM外,...

linux常用的命令有哪些
答:1.1 pwd命令 该命令的英文解释为print working directory(打印工作目录)。输入pwd命令,Linux会输出当前目录。1.2 cd命令 cd命令用来改变所在目录。cd / 转到根目录中 cd ~ 转到/home/user用户目录下 cd /usr 转...

tar命令是怎么使用?
答:tar命令 tar 文件是几个文件和(或)目录在一个文件中的集合。这是创建备份和归档的佳径。tar 使用的选项有:-c — 创建一个新归档。-f — 当与 -c 选项一起使用时,创建的 tar 文件使用该选项指定的文件名;当与...