linux解压命令(linux解压命令tar.xz)

linux解压命令(linux解压命令tar.xz)

tar压缩和解压缩

如何持久地记住tar命令选项?

  • cfv: create file verbosely.
  • xfv: extract files verbosely.

tar命令

打包命令

记忆关键词: create an archived file verbosely from source。这句英文与下文的命令格式一一对应:

  • an archived file: 指一个被创建的包文件
  • source: 指一个源目录或文件。
$ tar cfv <一个被创建的tar包文件的路径> <一个或多个源目录或文件的路径> 

$ tar cfv data1.tar ./data1
./data1/
./data1/file2.txt
./data1/file1.txt
./data1/file3.txt

压缩命令

记忆关键词: create a compressed file verbosely from source。这句英文与下文的命令格式一一对应:

  • a compressed file: 一个被创建的压缩文件。
  • source: 一个源目录或文件。
$ tar czfv <一个被创建的tar.gz压缩文件的路径> <一个或多个源目录或文件的路径> 
$ tar cjfv <一个被创建的tar.bz2压缩文件的路径> <一个或多个源目录或文件的路径> 

$ tar czfv data2.tar.gz ./data2
./data2/
./data2/file2.txt
./data2/file1.txt
./data2/file3.txt

$ tar cjfv data3.tar.bz2 ./data3
./data3/
./data3/file2.txt
./data3/file1.txt
./data3/file3.txt

# 一次将多个目录压缩进一个包里
$ tar czfv abc.tar.gz data1 data2 data3
data1/
data1/file2.txt
data1/file1.txt
data1/file3.txt
data2/
data2/file2.txt
data2/file1.txt
data2/file3.txt
data3/
data3/file2.txt
data3/file1.txt
data3/file3.txt

解压缩命令

记忆关键词: extract from a compressed file to a specified directory。这句英文与下文的命令格式一一对应:

  • a compressed file: 一个压缩文件。
  • a specified directory: 被解压缩到一个指定的目录。若不指定,则默认是当前目录。

将一个压缩文件解压缩到当前目录

  • tar xfv <一个tar包文件的路径>
  • tar xzfv <一个tar.gz压缩文件的路径>
  • tar xjfv <一个tar.bz2压缩文件的路径>

将一个压缩文件解压缩到一个指定的目录

  • tar xfv <一个tar包文件的路径> -C <被解包到一个指定目录>
  • tar xzfv <一个tar.gz压缩文件的路径> -C <被解压到一个指定目录>
  • tar xjfv <一个tar.bz2压缩文件的路径> -C <被解压到一个指定目录>
# 将data1.tar解包到./uncompressed/目录
$ tar xfv data1.tar -C ./uncompressed/
  
# 将data2.tar.gz解压缩到./uncompressed/目录
$ tar xzfv data2.tar.gz -C ./uncompressed/

# 将data3.tar.bz2解压缩到./uncompressed/目录
$ tar xjfv data3.tar.bz2 -C ./uncompressed/

查看包里包含哪些目录或文件

$ tar tf <一个tar包文件的路径>
$ tar tzf <一个tar.gz压缩文件的路径>
$ tar tjf <一个tar.bz2压缩文件的路径>

$ tar tf data1.tar 
./data1/
./data1/file2.txt
./data1/file1.txt
./data1/file3.txt

$ tar tzf data2.tar.gz 
./data2/
./data2/file2.txt
./data2/file1.txt
./data2/file3.txt

$ tar tjf data3.tar.bz2 
./data3/
./data3/file2.txt
./data3/file1.txt
./data3/file3.txt

zip命令

压缩命令

$ zip -r <被创建的zip文件的路径> <一个或多个目录或文件的路径>

# 将一个目录压缩进一个包里
$ zip -r data4.zip ./data4
  adding: data4/ (stored 0%)
  adding: data4/file2.txt (stored 0%)
  adding: data4/file1.txt (stored 0%)
  adding: data4/file3.txt (stored 0%)

# 将多个目录压缩进一个包里
$ zip -r data22.zip data2 data3
  adding: data2/ (stored 0%)
  adding: data2/file2.txt (stored 0%)
  adding: data2/file1.txt (stored 0%)
  adding: data2/file3.txt (stored 0%)
  adding: data3/ (stored 0%)
  adding: data3/file2.txt (stored 0%)
  adding: data3/file1.txt (stored 0%)
  adding: data3/file3.txt (stored 0%)

解压缩命令

# 将一个zip文件解压到当前目录
$ unzip <一个zip文件的路径>

# 将一个zip文件解压缩到一个指定的目录
$ unzip <一个zip文件的路径> -d <被解压缩一个指定目录的路径>
  
# 解压时,覆盖掉(overwrite)已存在的文件
$ unzip -o <一个zip文件的路径>

# 解压时,不覆盖掉(not overwrite)已存在的文件,保留已存在的文件
$ unzip -n <一个zip文件的路径>
  
# 解压时,不包含某些目录或文件
$ unzip <一个zip文件的路径> -x <被排除的目录或文件>

查看一个压缩包里包含哪些目录或文件

$ unzip -l <一个zip文件的路径>
  
$ unzip -l ../data4.zip 
Archive:  ../data4.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2022-04-11 21:02   data4/
        0  2022-04-11 21:02   data4/file2.txt
        0  2022-04-11 21:02   data4/file1.txt
        0  2022-04-11 21:02   data4/file3.txt
---------                     -------
        0                     4 files

tar.xz文件的创建和解压缩

# 创建tar.xz文件
$ tar cJfv <一个tar.xz文件的路径> <一个或多个源目录或文件的路径> 

# 将tar.xz文件解压缩到当前目录或一个指定的目录
$ tar xJfv <一个tar.xz文件的路径>
$ tar xJfv <一个tar.xz文件的路径> -C <被解压缩到一个指定的目录>
 
# 查看tar.xz压缩文件里包含哪些目录或文件
$ tar tf <一个tar.xz文件的路径>

解决企业获客难题,添加 微信:hvq698  备注:获客

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 792114587@qq.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.yuxke.com/7181.html