Linux中的tar命令

每次在解压的时候都要临时去搜索,明明很简单的命令却总是记不住,这次专门记录一下,加深理解,强化记忆

简介

在 Linux 系统中,tar 命令是一个用于打包和压缩文件的非常强大的工具。它允许用户将多个文件和目录合并成一个单一的归档文件,便于传输和备份 。此外,tar 还可以与不同的压缩程序一起使用,如 gzip、bzip2、xz 等,以减小归档文件的大小。

基本语法

tar 命令的基本语法如下:

tar [选项] [归档文件名] [文件或目录列表]

常用选项

  • -c:创建一个新的归档文件。
  • -x:从归档文件中提取文件。
  • -v:在处理文件时显示详细的信息。
  • -f:指定归档文件名。
  • -z:通过 gzip 压缩或解压缩。
  • -j:通过 bzip2 压缩或解压缩。
  • -J:通过 xz 压缩或解压缩。
  • -p:保留文件的权限。
  • -C:指定解压缩后文件的存放目录。

我们一般用到的命名可以分为两个模板

  1. tar -cvf:创建归档文件
  2. tar -xvf:从归档文件中提取文件

然后根据不同大压缩格式,添加对应的参数即可
例如:

  • tar -zcvf
  • tar -jcvf
  • tar -zxvf

示例

创建归档文件

要将 /home/user/docs 目录下的所有文件打包到 /home/user/docs.tar 文件中,可以使用以下命令:

tar -cvf /home/user/docs.tar /home/user/docs

压缩归档文件

使用 gzip 压缩上述创建的归档文件:

tar -czvf /home/user/docs.tar.gz /home/user/docs

解压缩归档文件

docs.tar.gz 中提取文件到当前目录:

tar -xzvf /home/user/docs.tar.gz

解压缩到指定目录

docs.tar.gz 中的内容解压缩到 /home/user/extracted_docs 目录:

tar -xzvf /home/user/docs.tar.gz -C /home/user/extracted_docs

高级用法

排除文件

在打包时排除某些文件或目录:

tar -cvzf exclude_files.tar.gz --exclude='*.log' /home/user/docs

保留文件的修改时间

在解压缩时保留文件的修改时间:

tar -xzvf files.tar.gz --preserve

列出归档内容

查看归档文件中的内容而不提取它们:

tar -tzvf archive.tar.gz

结语

tar 是 Linux 系统中一个非常有用的命令,它不仅可以帮助用户管理文件和目录,还可以通过压缩减少存储空间的使用。

在平时的开发中,我们可以通过使用编程语言提供的接口执行终端命令,比如os.system(),用这种的方式执行tar命令来进行打包和压缩操作,实现起来通过各种库简单,也不用去考虑不同的压缩格式需要不同的库。

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇