日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

隨心所欲下載—構(gòu)造你自己的Linux網(wǎng)絡(luò)螞蟻( 三 )


一些web站點在提供你想要的服務(wù)內(nèi)容之前會給瀏覽器強行灌輸許多cookie 。加上一個“Cookie:”頭和正確的信息 , 這個信息可以從你的瀏覽器的cookie文件中獲得 。
bash$ cookie=$( grep nytimes ~/.lynx_cookies awk "{printf("%s=%s;",$6,$7)}" )
為了從http://www.nytimes.com/下載資料 , 上面的腳本可以構(gòu)建你所需要的cookies 。當然前提是你已經(jīng)為使用這個瀏覽器的站點注冊了 。w3m使用了一個稍微有點不同的cookie文件格式:
bash$ cookie=$( grep nytimes ~/.w3m/cookie awk "{printf("%s=%s;",$2,$3)}" )
可以用下面這個bash執(zhí)行下載:

bash$ wget --header="Cookie: $cookie" http://www.nytimes.com/reuters/technology/tech-tech-supercomput.html
也可以使用curl工具:
bash$ curl -v -b $cookie -o supercomp.html http://www.nytimes.com/reuters/technology/tech-tech-supercomput.html
URLs列表
目前為止 , 我們下載的文件都是單個的文件或者鏡像整個站點 , 也是存儲整個網(wǎng)站目錄 。但有時候我們想下載幾個文件 , 當然 , 它的URL已經(jīng)在web頁中給出 , 而又不想將整個站點都存儲下來 。一個簡單的例子就是 , 我們只想將站點中排列好了的100個音樂文件的前面20個下載回來 。在這里“--accept”和“--reject”因為不是在文件擴展部分都不可以使用 。所以 , 我們使用“l(fā)ynx -dump” 。
bash$ lynx -dump ftp://ftp.ssc.com/pub/lg/ grep "gz$" tail -10 awk "{print $2}" > urllist.txt
使用很多GNU文本處理工具都可以把來自lynx的輸出過濾一下 。在上面這個例子里 , 我們將在“gz”中的URL的結(jié)尾析取出來并將最后10個文件存儲下來 。一個很小的bash腳本命令可以自動下載文件中列出的所有URLs:
bash$ for x in $(cat urllist.txt)
> do
> wget $x
> done
我們已經(jīng)成功的將Linux Gazette的最近十期下載下來 。
如何處理帶寬問題
假如你對帶寬不是很熟 , 而且你的文件下載因為你在web服務(wù)器的終端而非常慢的時候 , 下面這個技巧可以幫助你暢通無阻的傳送文件 。它需要使用到curl和幾個鏡像web站點 , 在那里有目標文件的幾個相同的備份 。例如 , 假設(shè)你想從下面三個站點下載Mandrake 8.0的ISO :
url1=http://ftp.eecs.umich.edu/pub/linux/mandrake/iso/Mandrake80-inst.iso
url2=http://ftp.rpmfind.net/linux/Mandrake/iso/Mandrake80-inst.iso
url3=http://ftp.wayne.edu/linux/mandrake/iso/Mandrake80-inst.iso
文件長度是677281792 , 使用curl的“--range” 選項同時分三部分下載 。
bash$ curl -r 0-199999999 -o mdk-iso.part1 $url1 &
bash$ curl -r 200000000-399999999 -o mdk-iso.part2 $url2 &
bash$ curl -r 400000000- -o mdk-iso.part3 $url3 &
分成了三個下載過程 , 不同的服務(wù)器傳送ISO鏡像文件的不同部分 ?!?r”選項指定從目標文件中選取的字節(jié)范圍 。完成后 , 再將三個部分合在一起——cat mdk-iso.part? > mdk-80.iso 。(在燒錄到CD-R之前建議你檢查md5散列)curl使用“--verbose”選項并在它自己的窗口中運行的話可以追蹤每個傳送過程 。
總結(jié)
【隨心所欲下載—構(gòu)造你自己的Linux網(wǎng)絡(luò)螞蟻】不要害怕使用非交互性方式來下載遠程文件 。web設(shè)計者設(shè)法強迫我們在他們的站點上交互式的沖浪 , 但仍然有免費的工具幫助我們自動進行這個工作 , 省下我們不少麻煩哦 。

推薦閱讀