當前位置:首頁 » 文件管理 » tar命令打包文件夾

tar命令打包文件夾

發布時間: 2023-07-24 03:32:38

linux下tar命令解壓到指定的目錄和用tar命令打包

1、linux下tar命令解壓到指定的目錄

    tar zxvf node_moles.tar -C newFile  

    把根目錄下的node_moles.tar 解壓到同級目錄newFile下,前提要保證newFile這個目錄存在。

2、用tar命令打包

    tar zcvf node_moles.tar node_moles

    將當前目錄下的node_moles文件打包到根目錄下並命名為node_moles.tar

Ⅱ linux系統中tar命令的使用詳解

Linux系統中tar命令是針對tar包的解壓縮命令,下面由我為大家整理了linux系統中tar命令的使用詳解,希望對大家有幫助!

linux系統中tar命令的使用詳解

一、tar命令用法

#壓縮

tar -czvf ***.tar.gz

tar -cjvf ***.tar.bz2

#解壓縮

tar -xzvf ***.tar.gz

tar -xjvf ***.tar.bz2

+++++++++++++++++++++++++++++++++++++++++++++

二、tar命令參數說明

-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 打包!

三、tar命令使用範例

範例一:將整個 /etc 目錄下的檔案全部打包成為 /tmp/etc.tar

[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==僅打包,不壓縮!

[root@linux ~]# tar -czvf /tmp/etc.tar.gz /etc <==打包後,以 gzip 壓縮

[root@linux ~]# tar -cjvf /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 -tzvf /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 -xzvf /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 -xzvf /tmp/etc.tar.gz etc/passwd

# 我可以透過 tar -tzvf 來查閱 tarfile 內的文件名稱,如果單只要一個檔案,

# 就可以透過這個方式來下達!注意到! etc.tar.gz 內的根目錄 / 是被拿掉了!

範例五:將 /etc/ 內的所有檔案備份下來,並且保存其許可權!

[root@linux ~]# tar -czvpf /tmp/etc.tar.gz /etc

# 這個 -p 的屬性是很重要的,尤其是當您要保留原本檔案的屬性時!

範例六:在 /home 當中,比 2005/06/01 新的檔案才備份

[root@linux ~]# tar -N '2005/06/01' -czvf home.tar.gz /home

範例七:我要備份 /home, /etc ,但不要 /home/dmtsai

[root@linux ~]# tar --exclude /home/dmtsai -czvf myfile.tar.gz /home/* /etc

範例八:將 /etc/ 打包後直接解開在 /tmp 底下,而不產生檔案!

[root@linux ~]# cd /tmp

[root@linux tmp]# tar -cvf - /etc | tar -xvf -

# 這個動作有點像是 cp -r /etc /tmp 啦~依舊是有其有用途的!

# 要注意的地方在於輸出檔變成 - 而輸入檔也變成 - ,又有一個 | 存在~

# 這分別代表 standard output, standard input 與管線命令啦!

# 這部分我們會在 Bash shell 時,再次提到這個指令跟大家再解釋啰!

++++++++++++++++++++++++++++++++++++++++++++

補充:tar如何解壓文件到指定的目錄

tar czvf mysql.tar.gz /var/lib/mysql

壓縮的文件,我想解壓到當前目錄下,而不是絕對路徑下,該如何解壓?

tar cxvf mysql.tar.gz 的話,會覆蓋 /var/lib/mysql 下全部文件吧?我現在就一個表壞了,想單獨恢復一個表的資料,而不是恢復全部資料庫,所以要解壓到指定的目錄下,再把那個表資料找不來恢復。

============================================

#tar zxvf mysql.tar.gz -C /home/aaa

============================================

tar zxvf mysql.tar.gz -C /home/aaa

這樣的話,解壓後的目錄結構是怎麼樣的?

/home/aaa/var/lib/mysql 嗎?

============================================

試下就知道了....

============================================

歸檔裡面的所有文件均是相對引用,歸檔解壓縮(釋放)在了當前目錄。歸檔文件總是釋放到當前目錄,為的是防止破壞文件系統中重名的文件。

所以,樓主的解壓縮不會覆蓋/var/lib/mysql,只會釋放在當前目錄先,即./var/lib/mysql如果想覆蓋的話,在歸檔和解壓時請使用-P參數:

tar zcvf mysql.tar.gz -P /var/lib/mysql

tar -Pzxvf mysql.tar.gz

Ⅲ 「方法」Linux下將文件打包、壓縮並分割成指定大小

https://blog.csdn.net/whu_zhangmin/article/details/45870077

tar -zcvf cm-11.tar.gz cm-11
//將cm-11文件夾壓縮成cm-11.tar.gz

split -b 4000M -d -a 1 cm-11.tar.gz cm-11.tar.gz.
//使用split命令,-b 4000M 表示設置每個分割包的大小,單位還是可以k
// -d "參數指定生成的分割包後綴為數字的形式
//-a x來設定序列的長度(默認值是2),這里設定序列的長度為1
執行命令後,生成壓縮包如下:

tar -zcvf cm-11.tar.gz cm-11 | split -b 4000M -d -a 1 - cm-11.tar.gz.
//採用管道,其中 - 參數表示將所創建的文件輸出到標准輸出上

tar -zxvf cm-11.tar.gz

cat cm-11.tar.gz.* | tar -zxv

tar可以用來壓縮打包單文件、多個文件、單個目錄、多個目錄。
Linux打包命令 tar
tar命令可以用來壓縮打包單文件、多個文件、單個目錄、多個目錄。
常用格式:
單個文件壓縮打包 tar -czvf my.tar.gz file1
多個文件壓縮打包 tar -czvf my.tar.gz file1 file2,...(file )(也可以給file 文件mv 目錄在壓縮)
單個目錄壓縮打包 tar -czvf my.tar.gz dir1
多個目錄壓縮打包 tar -czvf my.tar.gz dir1 dir2
解包至當前目錄:tar -xzvf my.tar.gz
cpio
含子目錄find x* | cpio -o > /y/z.cpio
不含子目錄ls x* | cpio -o > /y/z.cpio
解包: cpio -i < /y/z.cpio
[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 打包!

Ⅳ linux下tar的打包使用

分析如下:

一、Linux下的tar命令詳解

1、tar -c:建立壓縮檔案

2、tar -x:解壓

3、tar -t:查看內容

4、tar -r:向壓縮歸檔文件末尾追加文件

5、tar -u:更新原壓縮包中的文件

二、壓縮

1、tar -cvf jpg.tar *.jpg// 將目錄里所有jpg文件打包成jpg.tar

2、tar -czf jpg.tar.gz *.jpg// 將目錄里所有jpg文件打包成jpg.tar後,並且將其用gzip壓縮,生成一個gzip壓縮過的包,命名為jpg.tar.gz

3、tar -cjf jpg.tar.bz2 *.jpg// 將目錄里所有jpg文件打包成jpg.tar後,並且將其用bzip2壓縮,生成一個bzip2壓縮過的包,命名為jpg.tar.bz2

4、tar -cZf jpg.tar.Z *.jpg// 將目錄里所有jpg文件打包成jpg.tar後,並且將其用compress壓縮,生成一個umcompress壓縮過的包,命名為jpg.tar.Z

5、rar a jpg.rar *.jpg// rar格式的壓縮,需要先下載rar for linux

6、zip jpg.zip *.jpg// zip格式的壓縮,需要先下載zip for linux

三、解壓

1、tar -xvf file.tar// 解壓 tar包

2、tar -xzvf file.tar.gz// 解壓tar.gz

3、tar -xjvf file.tar.bz2// 解壓 tar.bz2

4、tar -xZvf file.tar.Z// 解壓tar.Z

5、unrar e file.rar// 解壓rar

6、unzip file.zip// 解壓zip

四、具體操作方法:

1、如圖看到的示例,用tar命令來打包這些文件以及目錄。(文件目錄以自己實際情況為准,這里用做參考用例)

Ⅳ linux把文件壓縮成.tar.gz的命令

1、連接上相應的linux主機,進入到等待輸入shell指令的linux命令行狀態下。

Ⅵ linux tar打包、解包命令

解壓
語法:tar [主選項+輔選項] 文件或者目錄

使用該命令時,主選項是必須要有的,它告訴tar要做什麼事情,輔選項是輔助使用的,可以選用。

主選項:

c 創建新的檔案文件。如果用戶想備份一個目錄或是一些文件,就要選擇這個選項。相當於打包。

x 從檔案文件中釋放文件。相當於拆包。

t 列出檔案文件的內容,查看已經備份了哪些文件。

特別注意,在參數的下達中, c/x/t 僅能存在一個!不可同時存在!因為不可能同時壓縮與解壓縮。

輔助選項:

-z :是否同時具有 gzip 的屬性?亦即是否需要用 gzip 壓縮或解壓? 一般格式為xx.tar.gz或xx. tgz

-j :是否同時具有 bzip2 的屬性?亦即是否需要用 bzip2 壓縮或解壓?一般格式為xx.tar.bz2

-v :壓縮的過程中顯示文件!這個常用

-f :使用檔名,請留意,在 f 之後要立即接檔名喔!不要再加其他參數!

-p :使用原文件的原來屬性(屬性不會依據使用者而變)

--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 內的根目錄 / 是被拿掉了!

範例五:我要備份 /home, /etc ,但不要 /home/dmtsai

[root@linux ~]# tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc

另外:tar命令的C參數

$ tar -cvf file2.tar /home/usr2/file2
tar: Removing leading '/' from members names
home/usr2/file2
該命令可以將/home/usr2/file2文件打包到當前目錄下的file2.tar中,需要注意的是:

使用絕對路徑標識的源文件,在用tar命令壓縮後,文件名連同絕對路徑(這里是home/usr2/,根目錄'/'被自動去掉了)一並被壓縮進來

。使用tar命令解壓縮後會出現以下情況:
$ tar -xvf file2.tar
$ ls
…… …… home …… ……

解壓縮後的文件名不是想像中的file2,而是home/usr2/file2。

$ tar -cvf file2.tar -C /home/usr2 file2 該命令中的-C dir參數,將tar的工作目錄從當前目錄改為/home/usr2,將file2文件(不帶絕對路徑)壓縮到file2.tar中。注意

:-C dir參數的作用在於改變工作目錄,其有效期為該命令中下一次-C dir參數之前


使用tar的-C dir參數,同樣可以做到在當前目錄/home/usr1下將文件解壓縮到其他目錄,例如:
$ tar -xvf file2.tar -C /home/usr2
而tar不用-C dir參數時是無法做到的:
$ tar -xvf file2.tar /home/usr2
tar: /tmp/file: Not found in archive
tar: Error exit delayed from previous errors

熱點內容
滑板鞋腳本視頻 發布:2025-02-02 09:48:54 瀏覽:433
群暉怎麼玩安卓模擬器 發布:2025-02-02 09:45:23 瀏覽:557
三星安卓12彩蛋怎麼玩 發布:2025-02-02 09:44:39 瀏覽:744
電腦顯示連接伺服器錯誤 發布:2025-02-02 09:24:10 瀏覽:537
瑞芯微開發板編譯 發布:2025-02-02 09:22:54 瀏覽:147
linux虛擬機用gcc編譯時顯示錯誤 發布:2025-02-02 09:14:01 瀏覽:240
java駝峰 發布:2025-02-02 09:13:26 瀏覽:652
魔獸腳本怎麼用 發布:2025-02-02 09:10:28 瀏覽:538
linuxadobe 發布:2025-02-02 09:09:43 瀏覽:212
sql2000資料庫連接 發布:2025-02-02 09:09:43 瀏覽:726