2011-05-09 68 views
7

由於該問題時如何指導WGET只下載同一個文件,如果存在一個較老指示WGET只下載同一個文件,如果存在一個較老

例如fileA的日期/文件戳爲9.00AM 10/10/2011

例如,在遠程服務器上的fileA有11AM 10/10/2011

這樣的wget將下載服務器作爲其新的(並覆蓋本地文件)上FILEA

任何幫助,將不勝感激日期/文件郵票我聽說這是可能的,但找了一段時間我沒有帶想出什麼

回答

9

在wget的手冊中的timestamping部分看看後:

時間標記

鏡像信息 Internet中最重要的一個方面是更新您的存檔。

下載整個檔案再次 又一次,只是更換了幾個 更改的文件是昂貴的,無論是在浪費帶寬和金錢, 並做更新時間 條款。這是 爲什麼所有鏡像工具都提供增量更新的 選項。

這樣的更新機制意味着 遠程服務器掃描搜索 新文件。只有那些新文件 將被下載到 舊版本的位置。

文件被認爲是新的,如果 之一這兩個條件都滿足:

該名字的文件已經不 本地存在。名稱爲 的文件確實存在,但是遠程文件是 比當地文件 更新。爲實現此目的,程序 需要知道上次 修改本地和遠程文件的時間。我們把這個信息稱爲文件的時間戳 。

在GNU Wget的時間戳的是 在.wgetrc接通使用「--timestamping」 (「-N」)的選項,或者通過時間戳 =上指令。有了這個選項,對於每個文件打算 下載,Wget將檢查是否存在一個 同名的本地文件。如果它是 它,並且遠程文件不是 更新,Wget將不會下載它。

如果本地文件不存在,或 的文件不匹配的大小, Wget的會下載遠程文件沒有 無論什麼時間標記說。

+0

謝謝你,現在會嘗試.. – James 2011-05-09 21:10:25

+0

「如果[...]的文件不匹配的大小,Wget的會下載遠程文件無論時間戳說什麼。 「對我來說這不是真的。該文件未能下載。即:發送HTTP請求,等待響應... 304未修改 未在服務器上修改文件'xxx.csv'。省略下載「當本地文件被截斷並更新時錯誤或誤解該功能? – 2017-09-06 06:14:10

5

wget -N http://server/path/to/file.txt

+0

謝謝,效果很好 – James 2011-05-09 21:13:23

相關問題