linux基礎(十五)檔案打包壓縮 解壓解檔

2021-08-10 17:36:14 字數 4507 閱讀 4966

檔案歸檔(打包)

一、檔案歸檔,就是把多個檔案變成乙個歸檔檔案,即打包。

二、命令

tar    c                ##建立

f                 ##指定歸檔檔案名稱

t                 ##顯示歸檔檔案中的內容

r                 ##向歸檔檔案中新增檔案

--get               ##取出單個檔案

--delete         ##刪除單個檔案

x                 ##取出歸檔檔案中的所有內容

-c               ##指定解檔目錄

測試:1.首先將

/etc/

打包成名為

etc.tar

的歸檔檔案

[root@server1 desktop]# tar cf etc.tar /etc/

tar: 從成員名中刪除開頭的

「/」[root@server1 desktop]# ls

etc.tar

2.檢視打包內容

[root@server1 desktop]# tar tf etc.tar 

etc/

etc/fstab

etc/crypttab

3.向etc.tar

中新增/boot/目錄

[root@server1 desktop]# tar rf etc.tar /boot/

[root@server1 desktop]# tar tf etc.tar

boot/initrd-plymouth.img

boot/initramfs-0-rescue-2c8e816ea5b64c1b926bfa66f88b54a8.img

boot/vmlinuz-0-rescue-2c8e816ea5b64c1b926bfa66f88b54a8

boot/initramfs-3.10.0-123.el7.x86_64.img

boot/initramfs-3.10.0-123.el7.x86_64kdump.img

4.取出單個檔案

[root@server1 desktop]# tar -f etc.tar --get boot

[root@server1 desktop]# ls

boot  etc.tar

[root@server1 desktop]# ls boot/

config-3.10.0-123.el7.x86_64

grub2

initramfs-0-rescue-2c8e816ea5b64c1b926bfa66f88b54a8.img

initramfs-3.10.0-123.el7.x86_64.img

initramfs-3.10.0-123.el7.x86_64kdump.img

initrd-plymouth.img

symvers-3.10.0-123.el7.x86_64.gz

system.map-3.10.0-123.el7.x86_64

vmlinuz-0-rescue-2c8e816ea5b64c1b926bfa66f88b54a8

vmlinuz-3.10.0-123.el7.x86_64

只取出boot

中的乙個也可以

[root@server1 desktop]# rm -rf boot/

[root@server1 desktop]# ls

etc.tar

[root@server1 desktop]# tar -f etc.tar --get boot/grub2

[root@server1 desktop]# ls

boot  etc.tar

[root@server1 desktop]# ls boot/

grub2

5.刪除包中的

boot

目錄[root@server1 desktop]# tar -f etc.tar --delete boot

[root@server1 desktop]# tar -tf etc.tar

etc/aliases.db

etc/hostname

etc/chrony.conf

etc/rsyslog.conf

用-t檢視只有

etc的東西了

6.取出歸檔檔案中的所有內容

[root@server1 desktop]# tar -xf etc.tar 

[root@server1 desktop]# ls

etc  etc.tar

7.指定解檔目錄

[root@server1 desktop]# tar -xf etc.tar -c /mnt/

[root@server1 desktop]# ls /mnt/

etctip:tar後面的那個

-規定是要加的,但不加也可以

壓縮、解壓

壓縮之後歸檔檔案檔案明顯變小了,有利於傳輸

[root@server1 desktop]# du -sh etc.tar 

29m    etc.tar

[root@server1 desktop]# gzip etc.tar 

[root@server1 desktop]# du -sh etc.tar.gz 

8.3m    etc.tar.gz

一、壓縮包格式

1.gz格式

gzip etc.tar        ##壓縮成

gz格式

gunzip  etc.tar.gz    ##解壓

gz格式壓縮包

2.bz2格式

bzip2 etc.tar        ##壓縮成

bz2格式

bunzip2 etc.tar.bz2    ##解壓

bz2格式壓縮包

3.xz格式

xz etc.tar         ##壓縮成

xz格式

unxz  etc.tar.xz    ##解壓

xz格式壓縮包

4.zip格式

zip -r etc.tar.zip etc.tar    ##壓縮成

zip格式

unzip etc.tar.zip        ##解壓

zip格式壓縮包

但是在實際應用中一般都是打包壓縮、解壓解檔一步完成的,不會先打包再壓縮,傳輸給另乙個人後他再解壓然後再用tar -x

解檔的。有沒有什麼快捷命令呢,可以使用下面的命令一步完成:

打包壓縮、解壓解檔

1.gz格式

tar zcf etc.tar.gz /etc    ##把檔案歸檔為

tar並壓縮成

gztar zxf etc.tar.gz    ##解壓並解檔

gz格式壓縮包

2.bz2格式

tar jcf etc.tar.bz2 /etc    ##把檔案歸檔為

tar並壓縮成

bz2tar jxf etc.tar.bz2    ##解壓並解檔

bz2格式壓縮包

3.xz格式

tar jcf etc.tar.xz /etc    ##把檔案歸檔為

tar並壓縮成

zxtar jxf etc.tar.xz    ##解壓並解檔

xz格式壓縮包

4.zip格式

tar -cf etc.tar /etc/            ##將

/etc/

打包成etc.tar

zip -r etc.tar.zip etc.tar    ##壓縮成

zip格式

unzip etc.tar.zip               ##解壓

zip格式壓縮包

tar -xf etc.tar                     ##解檔

etc.tar

歸檔檔案

tip:

zip格式的在

tar中沒有像-z、

-j、-j這樣的快捷指令,只能先打包再壓縮,然後先解壓再解檔了。

測試:打包壓縮為gz

格式並解壓解檔

.gz壓縮包

[root@server1 desktop]# tar zcf etc.tar.gz /etc/

tar: 從成員名中刪除開頭的

「/」[root@server1 desktop]# ls

etc.tar.gz

[root@server1 desktop]# tar zxf etc.tar.gz 

[root@server1 desktop]# ls

etc  etc.tar.gz

解壓解檔到指定位置

[root@server1 desktop]# tar -zxf etc.tar.gz -c /mnt/

[root@server1 desktop]# ls /mnt/

etc其餘類似,不再截圖。

十五 檔案上傳

對於通過input標籤實現的上傳功能,可以將其看作是乙個輸入框,即通過send keys 指定本地檔案路徑的方式實現檔案上傳。建立upfile.html檔案,如下 通過瀏覽器開啟upfile.html檔案,功能如下圖。接下來通過send keys 方法來實現檔案上傳。from selenium im...

linux基礎 壓縮打包

gzip先要安裝gzip yum install zip unzip y gzip file 對檔案進行壓縮,會刪除原始檔 zcat file.gz 檢視gz壓縮後的檔案 gzip d file.gz 解壓gzip的壓縮包zip yum install zip unzip y zip tt.zip ...

python學習(十五)檔案操作

python中的檔案操作主要有以下幾個模組,os,shutil 其中os模組主要有以下幾種方法 得到當前工作目錄,即當前python指令碼工作的目錄路徑 os.getcwd 返回指定目錄下的所有檔案和目錄名 os.listdir 函式用來刪除乙個檔案 os.remove 刪除多個目錄 os.remo...