Ok, więc muszę uruchomić wget, ale nie mogętworzenie plików „kropek” w lokalizacji, w której muszę uruchomić wget. Moje pytanie brzmi: „Czy mogę dostać wget, aby użył nazwy innej niż .listing, którą mogę określić”.
dalsze wyjaśnienie: jest to synchronizacja / odbijanie folderu ftp z lokalnym, więc użycie opcji -O nie jest zbyt użyteczne, ponieważ wymagam, aby wszystkie pliki były w formacie.
Odpowiedzi:
0 dla odpowiedzi № 1Możesz użyć -O
opcja ustawienia wyjściowej nazwy pliku, jak w:
wget -O file http://stackoverflow.com
Możesz także użyć wget --help
aby uzyskać pełną listę opcji.
Dla ludzi, którzy pojawią się później, i są zaskoczeni odpowiedzią na złe pytanie, oto kopia jednego z poniższych komentarzy:
@FelixD, tak, niestety źle zrozumiał pytanie. Patrząc na kod wget w wersji 1.19 (luty 2017), a konkretnie na ftp.c, wygląda na to, że plik .listing jest zakodowany w makrze
LIST_FILENAME
i nie ma możliwości obejścia. Prawdopodobnie istnieją lepsze opcje tworzenia kopii lustrzanych witryn ftp - może spójrz na lftp i jego polecenie lustrzane, a także na równoległe pobieranie: lftp.yar.ru
0 dla odpowiedzi nr 2
@ Paul: Możesz użyć opcji -O określonej przez spong
0 dla odpowiedzi № 3
Nie. Nie możesz tego zrobić.
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 dla odpowiedzi nr 4
Mam ten sam problem; wydaje się, że wget ratuje .listing
plik w bieżącym katalogu, z którego został wywołany wget, niezależnie od -O path/outpout_file
Jako brzydkie / rozpaczliwe rozwiązanie możemy spróbować uruchomić wget z losowych katalogów:
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
Uwaga: instrukcja mówi, że za pomocą --no-remove-listing
opcja spowoduje jej utworzenie .listing.1
, .listing.2
, itp., więc może to być opcja unikania konfliktów.
Uwaga: plik .listing nie jest w ogóle tworzony, jeśli logowanie ftp nie powiodło się.