tar 實用手冊

2021-09-02 11:18:07 字數 4271 閱讀 7851

[url]

tar 命令用來將很多檔案打包成乙個單一的磁帶或者磁碟歸檔,並可從歸檔檔案恢復出檔案列表。當你需要通過 email 傳送大量檔案時或者傳輸檔案時非常有用。這裡我們介紹一些基本的使用場景。

tar 的語法:

# tar [options] file.tar file1 file2 .. .. ..

file.tar 是 tar 歸檔檔案,而其他 file1 和 file2 等等是要被打包的檔案。

例如我們有兩個檔案 file1.txt 和 file2.txt

# ll

total 8

-rw-r--r--. 1 root root 2770 feb 7 22:37 file1.txt

-rw-r--r--. 1 root root 887 feb 7 22:38 file2.txt

tar 常用的使用場景

建立乙個 tar 檔案

語法:?

1# tar -cf archive.tar files .. ..

示例:?12

3# tar -cf file.tar file1.txt file2.txt

# ll file.tar

-rw-r--r--. 1 root root 10240 feb 7 22:42 file.tar

列出 tar 檔案中的所有檔案列表

# tar -tf archive.tar

示例:# tar -tf file.tar

file1.txt

file2.txt

從 tar 中提取所有檔案

tar -xf archive.tar

示例# tar -xf file.tar

# ll

total 20

-rw-r--r--. 1 root root 2770 feb 7 22:37 file1.txt

-rw-r--r--. 1 root root 887 feb 7 22:38 file2.txt

-rw-r--r--. 1 root root 10240 feb 7 22:42 file.tar

引數選項

1, -v, –verbose

verbosely list files processed:

syntax:

list all files in an archive.tar verbosely:

tar -tvf archive.tar

example:

# tar -tvf file.tar

-rw-r--r-- root/root 2770 2014-02-07 22:37 file1.txt

-rw-r--r-- root/root 887 2014-02-07 22:38 file2.txt

2, -c, –create

建立新的歸檔檔案

3, -t, –list

列出歸檔檔案中的內容

4, -x, –extract, –get

從歸檔中提取檔案

5, -d, –diff, –compare

比較歸檔和檔案系統的差異

example:

# tar -tf file.tar

file2.txt

file3.txt

file1.txt

# tar -df file.tar file1.txt file2.txt file4.txt

tar: file4.txt: not found in archive

tar: exiting with failure status due to previous errors

----verbosely----

# tar -dvf file.tar file1.txt file2.txt

file2.txt

file1.txt

# tar -dvf file.tar file1.txt file2.txt file6.txt

file2.txt

file1.txt

tar: file6.txt: not found in archive

tar: exiting with failure status due to previous errors

6, –delete

從歸檔中刪除某檔案

示例:從歸檔 file.tar 中刪除 file1.txt

# tar --delete -f file.tar file1.txt

# tar -tf file.tar

file2.txt

追加檔案到歸檔中

示例:追加 file3.txt 到 file.tar

# tar -rf file.tar file3.txt

# tar -tf file.tar

file1.txt

file2.txt

file3.txt

8, -a, –catenate, –concatenate

將乙個tar 歸檔追加到另外乙個歸檔檔案中

建立另外乙個 tar 檔案

# tar -cf archive.tar file1.txt file3.txt

追加方法:

# tar -af file.tar archive.tar

# tar -tf file.tar

file2.txt

file3.txt

file1.txt

file1.txt

file3.txt

9, –test-label

測試歸檔卷標並退出

10, -u, –update

只追加最新的檔案

示例:# tar -tf file.tar

file1.txt

file2.txt

# tar -uf file.tar file1.txt file3.txt file2.txt

# tar -tf file.tar

file1.txt

file2.txt

file3.txt

11, -c, –directory=dir

更改目錄到 dir

例如:提取檔案到另外乙個目錄

# tar -xvf file.tar -c /root/tar2

file1.txt

file2.txt

# cd -

/root/tar2

# ll

total 28

-rw-r--r--. 1 root root 23250 feb 7 23:11 file1.txt

-rw-r--r--. 1 root root 887 feb 7 22:38 file2.txt

12, -p, –preserve-permissions

抽取檔案時保留原有的檔案許可權

壓縮歸檔檔案,使用 bzip 和 gzip 兩種方法

跟壓縮相關的引數

13, -j, –bzip2

使用 bzip2 對歸檔進行壓縮

示例:# tar -jcf file.tar.bz file2.txt file1.txt

# ll

total 128

-rw-r--r--. 1 root root 23250 feb 7 23:11 file1.txt

-rw-r--r--. 1 root root 887 feb 7 22:38 file2.txt

-rw-r--r--. 1 root root 30720 feb 7 23:30 file.tar

-rw-r--r--. 1 root root 1797 feb 7 23:42 file.tar.bz

請看,上面的檔案大小通過 bzip 降低到 1797 位元組。

14, -z, –gzip

使用 gzip 壓縮歸檔

示例:# tar -zcf file.tar.gz file2.txt file1.txt

# ll

total 132

-rw-r--r--. 1 root root 23250 feb 7 23:11 file1.txt

-rw-r--r--. 1 root root 887 feb 7 22:38 file2.txt

-rw-r--r--. 1 root root 30720 feb 7 23:30 file.tar

-rw-r--r--. 1 root root 1797 feb 7 23:42 file.tar.bz

-rw-r--r--. 1 root root 1673 feb 7 23:45 file.tar.gz

就這些了!

Rcpp實用手冊

c 對應於r的資料型別有如下這些 double numeric int integer string character logical bool 在c 中可以直接使用r的物件有 所有算術邏輯運算子都是可以向量化的 pow,include using namespace rcpp rcpp expo...

GraphEdit 實用手冊

graphedit graph filter 的原則上 directshow 是基於模組化,每個功能模組即單元元件都採取 com元件方式,稱為 filter 將filter 串聯在一起就形成了 graph filter 可以算是乙個簡單的 directshow 應用程式。通過這個工具,可以很直觀的看...

markdown 標籤實用手冊

段落和換行 乙個 markdown 段落是由乙個或多個連續的文字行組成,它的前後要有乙個以上的空行 空行的定義是顯示上看起來像是空的,便會被視為空行。比方說,若某一行只包含空格和製表符,則該行也會被視為空行 普通段落不該用空格或製表符來縮排。標題 這是 h1 這是 h2 這是 h6 區塊引用 這是乙...