Shell筆記系列五
wget
用於從網頁上下載資源的命令。
[[email protected] test]$ wget www.baidu.com --2018-12-12 07:13:42-- http://www.baidu.com/ Resolving www.baidu.com (www.baidu.com)... 61.135.169.121, 61.135.169.125 Connecting to www.baidu.com (www.baidu.com)|61.135.169.121|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 2381 (2.3K) [text/html] Saving to: ‘index.html’ 100%[======================================>] 2,381 --.-K/s in 0s 2018-12-12 07:13:43 (389 MB/s) - ‘index.html’ saved [2381/2381]
使用-O可以指定輸出檔名,如果存在同名檔案,那麼該檔案會被下載檔案所取代,也可以使用選項-o,指定一個日誌檔案,這樣日誌資訊就不會被列印到stdout了。
由於網路問題,有可能會中斷,所以使用-t選項,可以在放棄下載之前嘗試指定次數
wget -t 5 www.baidu.com
下載限速:使用--limit-rate
[[email protected] test]$ wget --limit-rate 1k www.baidu.com --2018-12-12 07:30:11-- http://www.baidu.com/ Resolving www.baidu.com (www.baidu.com)... 61.135.169.125, 61.135.169.121 Connecting to www.baidu.com (www.baidu.com)|61.135.169.125|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 2381 (2.3K) [text/html] Saving to: ‘index.html.1’ 100%[==================================================================================================>] 2,381 1023B/s in 2.3s 2018-12-12 07:30:14 (1023 B/s) - ‘index.html.1’ saved [2381/2381]
-Q 或 -quota 可以指定最大下載配額,配額用盡,則停止下載。
-c,從斷點開始繼續下載
對於訪問需要認證的HTTP或FTP頁面,可以使用--user或--password 來提供認證資訊
[[email protected] test]$ wget --user XXX --password XXX www.XXX.com
wget像爬蟲一樣以遞迴的方式遍歷網頁上的所有的URL連線,並逐個下載,可以使用--mirror --conver-links xx.com.
[[email protected] test]$ wget --mirror --convert-links https://www.csdn.net/
[ [email protected] test]$ ll
total 0
drwxrwxr-x. 4 land land 79 Dec 12 07:47 www.csdn.net
tar
命令用於歸檔,可以將多個檔案和資料夾打包為單個檔案,同時保留所有檔案屬性,tar命令可以建立,更新,檢查以及解包歸檔檔案。
-c 表示建立新的歸檔檔案, -f表示歸檔檔名,-t表示列出歸檔檔案中所包含的檔案,-v 在輸入中加入更多的細節資訊,這個特性叫做冗長模式。
[[email protected] test]$ tar -cf output.tar www.csdn.net/
[[email protected] test]$ tar -tvf output.tar
drwxrwxr-x land/land 0 2018-12-12 07:47 www.csdn.net/
-rw-rw-r-- land/land 234222 2018-12-12 07:45 www.csdn.net/index.html
-rw-rw-r-- land/land 270 2018-12-06 04:17 www.csdn.net/robots.txt
drwxrwxr-x land/land 0 2018-12-12 07:45 www.csdn.net/nav/
-rw-rw-r-- land/land 105016 2018-12-12 07:45 www.csdn.net/nav/newarticles
-rw-rw-r-- land/land 0 2018-12-12 07:45 www.csdn.net/nav/watchers
-rw-rw-r-- land/land 141364 2018-12-12 07:45 www.csdn.net/nav/news
-rw-rw-r-- land/land 143992 2018-12-12 07:45 www.csdn.net/nav/ai
......
-r可以將新檔案追加到已有的歸檔檔案末尾。
從歸檔檔案中提取檔案或目錄。使用-x可以將歸檔檔案的內容提取到當前目錄,-f,-v同理
[[email protected] test]$ tar -xvf output.tar
www.csdn.net/
www.csdn.net/index.html
www.csdn.net/robots.txt
www.csdn.net/nav/
www.csdn.net/nav/newarticles
www.csdn.net/nav/watchers
......
使用-A選項可以合併多個tar檔案。
壓縮tar歸檔檔案
tar命令預設只進行歸檔,並不對其進行壓縮,但是tar支援使用壓縮,壓縮能夠顯著減少檔案的體積,-j代表bunzip2格式,-z代表gzip壓縮,--lzma代表lzma格式。-a可以根據副檔名自動選擇壓縮演算法。可以使用選項--exclude [PATTERN]可以將匹配萬用字元模式的檔案排除在歸檔過程之外。
[[email protected] test]$ tar -acvf output3.tar hello.txt
hello.txt
[[email protected] test]$ tar -zcvf output3.tar hello.txt
hello.txt
解壓縮使用壓縮演算法的歸檔檔案,只需將c選項改為x選項即可。
zcat命令可以直接檢視使用gzip格式檔案。
其他壓縮命令有:
gzip: 壓縮:gzip filename 解壓縮:gunzip filename.gz
bzip2: 壓縮:bzip2 filename 解壓縮: bunzip2 filename.bz2
lzma: 壓縮:lzma filename 解壓縮:unlzma filename.lzma
zip: 壓縮:zip filename.zip file1 file2 解壓縮: unzip file.zip
參考《Linux Shell 指令碼攻略》