Linux 壓縮、解壓文件的 4 種方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法
Linux 壓縮、解壓文件的方式有如下幾種:
1. tar
tar 是一種常用的打包工具,可以將多個(gè)文件或目錄打包成一個(gè) tar 包,也可以將一個(gè) tar 包解壓縮到指定的目錄。
1.1. 壓縮:
# 將多個(gè)文件或目錄打包成一個(gè) tar 包,-c 表示創(chuàng)建 tar 包,-v 表示顯示詳細(xì)信息,-f 表示指定文件名
tar -cvf filename.tar file1 file2 dir1
# 將一個(gè)目錄及其子目錄下的所有文件打包成一個(gè) tar 包,-z 表示使用 gzip 壓縮,-f 表示指定文件名
tar -czf filename.tar.gz dir1
# 將一個(gè)目錄及其子目錄下的所有文件打包成一個(gè) tar 包,-j 表示使用 bzip2 壓縮,-f 表示指定文件名
tar -cjf filename.tar.bz2 dir1
1.2. 解壓:
# 將一個(gè) tar 包解壓縮到指定目錄下,-x 表示解壓,-v 表示顯示詳細(xì)信息,-f 表示指定文件名
tar -xvf filename.tar -C /path/to/directory
# 將一個(gè) gzip 壓縮的 tar 包解壓縮到指定目錄下,-z 表示使用 gzip 解壓縮
tar -zxvf filename.tar.gz -C /path/to/directory
# 將一個(gè) bzip2 壓縮的 tar 包解壓縮到指定目錄下,-j 表示使用 bzip2 解壓縮
tar -jxvf filename.tar.bz2 -C /path/to/directory
1.3. tar 命令各參數(shù)含義
tar 命令是 Linux 下常用的打包和壓縮工具,用于將多個(gè)文件或目錄打包成一個(gè) tar 包,也可以將一個(gè) tar 包解壓縮到指定的目錄。tar 命令的各個(gè)參數(shù)的含義如下:
tar [選項(xiàng)] [文件名] [文件列表]
其中,選項(xiàng)包括:
-
-c, --create
:創(chuàng)建一個(gè) tar 包??梢院?-f
參數(shù)一起使用,指定生成的 tar 包的文件名; -
-x, --extract, --get
:解包一個(gè) tar 包??梢院?-f
參數(shù)一起使用,指定要解壓縮的 tar 包的文件名; -
-r, --append
:將一個(gè)或多個(gè)文件追加到已存在的 tar 包的末尾??梢院?-f
參數(shù)一起使用,指定要追加的 tar 包的文件名; -
-u, --update
:僅將新于 tar 包中已有的文件或目錄添加到 tar 包中。可以和-f
參數(shù)一起使用,指定要更新的 tar 包的文件名; -
-t, --list
:列出一個(gè) tar 包中包含的文件列表??梢院?-f
參數(shù)一起使用,指定要列出的 tar 包的文件名; -
-f, --file=ARCHIVE
:指定要操作的 tar 包的文件名; -
-v, --verbose
:在操作的過程中顯示詳細(xì)信息; -
-z, --gzip, --ungzip
:在 tar 包中使用 gzip 壓縮; -
-j, --bzip2
:在 tar 包中使用 bzip2 壓縮; -
-C, --directory=DIR
:指定解壓縮到的目錄。
例如,將多個(gè)文件或目錄打包成一個(gè) tar 包,可以使用以下命令:
tar -cvf filename.tar file1 file2 dir1
其中,-c
表示創(chuàng)建 tar 包,-v
表示顯示詳細(xì)信息,-f
后面跟著的是生成的 tar 包的文件名,file1 file2 dir1
是要打包的文件或目錄列表。
將一個(gè) tar 包解壓縮到指定目錄下,可以使用以下命令:
tar -xvf filename.tar -C /path/to/directory
其中,-x
表示解壓縮,-v
表示顯示詳細(xì)信息,-f
后面跟著的是要解壓縮的 tar 包的文件名,-C
后面跟著的是解壓縮到的目錄。
2. gzip、gunzip
gzip 是一種常用的壓縮工具,可以將單個(gè)文件壓縮成一個(gè) gzip 文件,也可以將一個(gè) gzip 文件解壓縮。
2.1. 壓縮:
# 將一個(gè)文件壓縮成 gzip 格式,-c 表示將壓縮結(jié)果輸出到標(biāo)準(zhǔn)輸出,-v 表示顯示詳細(xì)信息
gzip -cv filename > filename.gz
2.2. 解壓:
# 將一個(gè) gzip 文件解壓縮,-d 表示解壓
gunzip -d filename.gz
2.3. gzip、gunzip 命令各參數(shù)含義
gzip 和 gunzip 命令是 Linux 下常用的壓縮和解壓縮工具,用于將單個(gè)文件壓縮成一個(gè) gzip 文件,也可以將一個(gè) gzip 文件解壓縮。
2.3.1. gzip 命令的各個(gè)參數(shù)的含義如下:
gzip [選項(xiàng)] 文件名
其中,選項(xiàng)包括:
-
-c, --stdout
:將壓縮結(jié)果輸出到標(biāo)準(zhǔn)輸出; -
-d, --decompress, --uncompress
:解壓縮 gzip 文件; -
-f, --force
:強(qiáng)制壓縮,覆蓋已有文件; -
-h, --help
:顯示幫助信息; -
-l, --list
:列出 gzip 文件的詳細(xì)信息; -
-n, --no-name
:不保存原文件名到 gzip 文件中; -
-q, --quiet
:不顯示壓縮結(jié)果信息; -
-r, --recursive
:遞歸處理目錄下的所有文件; -
-t, --test
:測(cè)試 gzip 文件的完整性; -
-v, --verbose
:顯示壓縮結(jié)果信息; -
-1
到-9
:指定壓縮級(jí)別,數(shù)字越大壓縮比越高,但所需時(shí)間也越長(zhǎng)。
例如,將一個(gè)文件壓縮成 gzip 格式,并將壓縮結(jié)果輸出到標(biāo)準(zhǔn)輸出,可以使用以下命令:
gzip -c filename > filename.gz
其中,-c
表示將壓縮結(jié)果輸出到標(biāo)準(zhǔn)輸出,filename
是要壓縮的文件名,> filename.gz
表示將壓縮結(jié)果重定向到 filename.gz 文件中。
2.3.2. gunzip 命令的各個(gè)參數(shù)的含義如下:
gunzip [選項(xiàng)] 文件名
其中,選項(xiàng)包括:
-
-c, --stdout
:將解壓縮結(jié)果輸出到標(biāo)準(zhǔn)輸出; -
-f, --force
:強(qiáng)制解壓縮,覆蓋已有文件; -
-h, --help
:顯示幫助信息; -
-l, --list
:列出 gzip 文件的詳細(xì)信息; -
-q, --quiet
:不顯示解壓縮結(jié)果信息; -
-r, --recursive
:遞歸處理目錄下的所有文件; -
-t, --test
:測(cè)試 gzip 文件的完整性; -
-v, --verbose
:顯示解壓縮結(jié)果信息。
例如,將一個(gè) gzip 文件解壓縮,可以使用以下命令:
gunzip filename.gz
其中,filename.gz
是要解壓縮的 gzip 文件名。
3. zip、unzip
zip 是一種常用的壓縮工具,可以將多個(gè)文件或目錄打包成一個(gè) zip 文件,也可以將一個(gè) zip 文件解壓縮到指定的目錄。
3.1. 壓縮:
# 將多個(gè)文件或目錄打包成一個(gè) zip 文件
zip -r filename.zip file1 file2 dir1
3.2. 解壓:
# 將一個(gè) zip 文件解壓縮到指定目錄下
unzip filename.zip -d /path/to/directory
3.3. zip、unzip 命令各參數(shù)含義
3.3.1. zip 命令參數(shù)含義
zip
命令用于將多個(gè)文件或目錄歸檔成一個(gè)壓縮文件,下面是常用的參數(shù):
-
-r
遞歸地壓縮目錄及其子目錄下的所有文件。 -
-m
將文件移動(dòng)到壓縮文件中,而不是復(fù)制它們。這意味著被壓縮的文件將被刪除。 -
-j
將目錄信息從壓縮文件中刪除,僅壓縮文件本身。 -
-q
靜默模式,不顯示壓縮過程中的信息。 -
-v
顯示壓縮過程中的詳細(xì)信息。 -
-c
創(chuàng)建一個(gè)新的壓縮文件,如果該文件已經(jīng)存在,則覆蓋它。 -
-u
只更新壓縮文件中的新文件或修改過的文件。 -
-f
指定壓縮文件名。
例如,要將目錄 /home/user/docs
下的所有文件壓縮成一個(gè)名為 docs.zip
的壓縮文件,可以使用以下命令:
zip -r docs.zip /home/user/docs
3.3.2. unzip 命令參數(shù)含義
unzip
命令用于解壓縮 .zip
格式的壓縮文件,下面是常用的參數(shù):
-
-l
列出壓縮文件中的所有文件,但不解壓縮它們。 -
-n
不要覆蓋現(xiàn)有文件。 -
-o
覆蓋現(xiàn)有文件。 -
-q
靜默模式,不顯示解壓縮過程中的信息。 -
-v
顯示解壓縮過程中的詳細(xì)信息。 -
-d
指定解壓縮后的目錄。
例如,要解壓縮名為 docs.zip
的壓縮文件到目錄 /home/user/unzip
下,可以使用以下命令:
unzip docs.zip -d /home/user/unzip
4. 7z
7z 是一種高壓縮比的壓縮工具,可以將多個(gè)文件或目錄打包成一個(gè) 7z 文件,也可以將一個(gè) 7z 文件解壓縮到指定的目錄。
4.1. 壓縮:
# 將多個(gè)文件或目錄打包成一個(gè) 7z 文件
7z a filename.7z file1 file2 dir1
4.2. 解壓:
# 將一個(gè) 7z 文件解壓縮到指定目錄下
7z x filename.7z -o/path/to/directory
以上是 Linux 壓縮、解壓文件的幾種常用方式,根據(jù)需要選擇不同的方式。
4.3. 7z 命令各參數(shù)含義
7z
命令是一個(gè)高效的壓縮和解壓縮工具,常用于Linux和Windows平臺(tái)。下面是常用的參數(shù):
-
a
創(chuàng)建一個(gè)壓縮文件。 -
-t
指定壓縮文件的格式,常用格式有:7z、zip、gzip、bzip2、tar等。 -
-mx
指定壓縮級(jí)別,數(shù)字越大,壓縮比越高,但耗費(fèi)的時(shí)間也越多。取值范圍為0-9,其中0表示不壓縮,9表示最高壓縮級(jí)別。 -
-p
設(shè)置壓縮文件密碼。 -
-mhe=on
啟用文件頭加密。 -
-mmt
設(shè)置多線程壓縮,可以加快壓縮速度。 -
-m0=lzma2
指定壓縮算法,常用的算法有:lzma2、lzma、ppmd、bzip2等。 -
-v
指定壓縮包大小,支持 K(千字節(jié))、M(兆字節(jié))、G(吉字節(jié))和 B(字節(jié))等單位。 -
-r
遞歸壓縮目錄及其子目錄下的所有文件。 -
-x
排除某些文件或目錄。 -
-o
指定壓縮文件輸出路徑和名稱。
例如,要將目錄 /home/user/docs
下的所有文件壓縮成一個(gè)使用 lzma2 算法的壓縮文件,并設(shè)置密碼為 mypassword
,可以使用以下命令:文章來源:http://www.zghlxwxcb.cn/news/detail-685475.html
7z a -t7z -m0=lzma2 -mx=9 -mhe=on -p'mypassword' docs.7z /home/user/docs/*
要解壓縮名為 docs.7z
的壓縮文件并將其解壓縮到目錄 /home/user/unzip
下,可以使用以下命令:文章來源地址http://www.zghlxwxcb.cn/news/detail-685475.html
7z x docs.7z -o/home/user/unzip -p'mypassword'
到了這里,關(guān)于Linux 壓縮、解壓文件的 4 種方式。tar、gzip、gunzip、zip、unzip、7z命令使用方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!