Linux13--歸檔管理


歸檔管理

計算機中的數據經常需要備份,tar是Unix/Linux中最常用的備份工具,此命令可以把一系列文件歸檔到一個大文件中,也可以把檔案文件解開以恢復數據。

壓縮文件

tar 命令表示壓縮文件

語法格式:

​ tar [參數] 打包文件名 文件

選項說明:

-c 建立新的壓縮文件
-z 通過 gzip 壓縮文件
-v 顯示操作過程
-f 指定壓縮文件

tar -czvf  day01.tar.gz day01.py
tar -czvf  ../ggg/day01.tar.gz day01.py
tar -czvf day03.tar.gz t1.sql t2.sql t3.sql

解壓文件

tar 命令表示解壓文件

語法格式:

​ tar 選項 壓縮文件名稱

選項說明:

-x 從壓縮的文件中提取文件

-z 通過 gzip 壓縮文件

-v 顯示操作過程

-f 指定壓縮文件

tar -xzvf  t02.tar.gz
tar -xzvf ../test1/day03.tar.gz

文件壓縮解壓

gzip

tar與gzip命令結合使用實現文件打包、壓縮。 tar只負責打包文件,但不壓縮,用gzip壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz

gzip使用格式如下:

​ gzip [選項] 被壓縮文件

常用選項:

選項 含義
-d 解壓
-r 壓縮所有子目錄

tar這個命令並沒有壓縮的功能,它只是一個打包的命令,但是在tar命令中增加一個選項(-z)可以調用gzip實現了一個壓縮的功能,實行一個先打包后壓縮的過程。

壓縮用法:tar cvzf 壓縮包包名 文件1 文件2 ...

-z :指定壓縮包的格式為:file.tar.gz

解壓用法: tar zxvf 壓縮包包名

-z :指定壓縮包的格式為:file.tar.gz

解壓到指定目錄:-C (大寫字母“C”)

文件壓縮解壓bzip2

tar與bzip2命令結合使用實現文件打包、壓縮(用法和gzip一樣)。
tar只負責打包文件,但不壓縮,用bzip2壓縮tar打包后的文件,其擴展名一般用xxxx.tar.gz2
在tar命令中增加一個選項(-j)可以調用bzip2實現了一個壓縮的功能,實行一個先打包后壓縮的過程
壓縮用法:tar -jcvf 壓縮包包名 文件...(tar jcvf bk.tar.bz2 *.c)
解壓用法:tar -jxvf 壓縮包包名 (tar jxvf bk.tar.bz2)

文件壓縮解壓:zip、unzip

通過zip壓縮文件的目標文件不需要指定擴展名,默認擴展名為zip。
壓縮文件:zip [-r] 目標文件(沒有擴展名) 源文件
解壓文件:unzip -d 解壓后目錄文件 壓縮文件

查看文件

which指令會在環境變量$PATH設置的目錄里查找符合條件的文件

語法格式:

​ which [文件...]

參數:

-n<文件名長度>  指定文件名長度,指定的長度必須大於或等於所有文件中最長的文件名。

-p<文件名長度>  與-n參數相同,但此處的<文件名長度>包括了文件的路徑。

-w 指定輸出時欄位的寬度。

-V 顯示版本信息。

which bash
查看bash的絕對路徑

通過什么命令查找執行命令?

which 只能查可執行文件
whereis 只能查二進制文件、說明文檔,源文件等

查找命令的可執行文件是去哪查找的? 怎么對其進行設置及添加?

whereis [-bfmsu][-B <目錄>...][-M <目錄>...][-S <目錄>...][文件...]
補充說明:whereis 指令會在特定目錄中查找符合條件的文件。這些文件的烈性應屬於原始代碼,二進制文件,或是幫助文件。
-b 只查找二進制文件。
-B<目錄> 只在設置的目錄下查找二進制文件。-f 不顯示文件名前的路徑名稱。
-m 只查找說明文件。
-M<目錄> 只在設置的目錄下查找說明文件。-s 只查找原始代碼文件。
-S<目錄> 只在設置的目錄下查找原始代碼文件。-u 查找不包含指定類型的文件。
which 指令會在 PATH 變量指定的路徑中,搜索某個系統命令的位置,並且返回第一個搜索結果。
-n 指定文件名長度,指定的長度必須大於或等於所有文件中最長的文件名。
-p 與-n 參數相同,但此處的包括了文件的路徑。-w 指定輸出時欄位的寬度。
-V 顯示版本信息

查看各類環境變量用什么命令?

查看所有 env
查看某個,如 home:env $HOME

刪除文件

rm 命令表示刪除文件

語法格式:

rm 選項 文件名稱

選項說明:

-f 忽略不存在的文件,不會出現警告信息

-r 遞歸刪除

rm -f test.doc
練習:在testing目錄下,進行如下操作:
(1)創建2個目錄,分別是: test1、test2
cd testing
mkdir test1 test2
ls
(2)在test1目錄中,新建文件,t1.sql、t2.sql、t3.sql
cd test1
touch t1.sql t2.sql t3.sql
ls
(3)在test1目錄中,將文件t1.sql、t2.sql、t3.sql壓縮
  變成一個壓縮包,名稱為linux_day03.tar.gz
tar -czvf linux_day03.tar.gz t1.sql t2.sql t3.sql
(4)將linux_day03.tar.gz壓縮包,解壓到test2目錄中
cd ../test2
tar -xzvf ../test1/linux_day03.tar.gz 
(5)刪除test2目錄中,t3.sql文件
rm -f t3.sql
ls


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM