2010-04-06 35 views
3

好吧,所以我需要運行wget,但我禁止在我需要運行wget的位置創建'點'文件。所以我的問題是'我可以讓wget使用除了.listing之外的名稱,我可以指定'。wget .listing文件,有沒有一種方法來指定它的名稱

進一步說明:這是爲了將ftp文件夾與本地文件夾同步/鏡像,因此使用-O選項並不是很有用,因爲我需要所有文件保持格式。

+0

superuser.com? ___ – 2010-04-06 21:06:10

回答

1

可以使用-O選項來設置輸出文件名,如:

wget -O file http://stackoverflow.com 

您還可以使用wget --help得到的選項的完整列表。


對於一起來算賬,並回答錯誤的問題感到驚訝的鄉親,這裏是下面的評論的一個副本:

@FelixD,是的,很不幸的誤解題。 查看wget版本1.19(2017年2月)的代碼,特別是ftp.c,看起來該.listing文件在宏LIST_FILENAME中被硬編碼,並且沒有覆蓋可能。有可能是鏡像FTP站點更好的選擇 - 也許看一看的lftp及其鏡像命令,還包括並行下載:lftp.yar.ru

+1

海報不詢問輸出文件的名稱,但臨時的'.listing'文件的名稱wget創建了例如當從FTP下載與globbing時。在同一目錄中使用多個wget實例時,這些文件會發生衝突。不知道爲什麼這被標記爲答案,因爲它不是。 – FelixD 2017-05-02 08:20:03

+1

@FelixD,是的,不幸的是誤解了這個問題。看看wget版本1.19(2017年2月)的代碼,特別是ftp.c,看起來'.listing'文件在宏'LIST_FILENAME'中被硬編碼,並且不可能被覆蓋。鏡像ftp站點可能有更好的選擇 - 也許看看lftp及其鏡像命令,還包括並行下載:https://lftp.yar。ru – msandiford 2017-05-02 11:38:20

+0

感謝您的快速回復和檢查源代碼,可惜它是硬編碼的。明天我們會看看lftp,也可能爲我的具體任務提供另一種解決方法。 – FelixD 2017-05-02 17:00:24

0

@保羅:您可以使用指定-O選項由司朋

0

不,你不能這樣做。

的wget/SRC/ftp.c

/* File where the "ls -al" listing will be saved. */ 
#ifdef MSDOS 
#define LIST_FILENAME "_listing" 
#else 
#define LIST_FILENAME ".listing" 
#endif 
0

我有同樣的問題; 的wget似乎保存.listing文件在當前目錄下的wget從叫,不管-O path/outpout_file

作爲一個醜陋的/絕望的解決方案,我們可以嘗試從隨機目錄wget的運行:

cd /temp/random_1; wget ftp://example.com/ -O /full/save_path/to_file_1.txt

cd /temp/random_2; wget ftp://example.com/ -O /full/save_path/to_file_2.txt

注意:手冊上說使用--no-remove-listing選項會導致它創建.listing.1,。 listing.2等,這可能是避免衝突的一種選擇。

注意:如果ftp登錄失敗,則不會創建.listing文件。

相關問題