WGET(1) | GNU Wget | WGET(1) |
wget - nieinteraktywny program do pobierania z sieci
wget [opcja]... [URL]...
GNU Wget jest wolnym programem narzędziowym do pobierania plików z sieci. Obsługuje protokoły HTTP, HTTPS i FTP, a także pobieranie poprzez serwery proxy HTTP.
Wget jest nieinteraktywny, co pozwala mu działać w tle, w czasie gdy użytkownik nie jest zalogowany. Dzięki temu użytkownik może rozpocząć pobieranie i rozłączyć się z komputerem, pozwalając Wgetowi na zakończenie pracy. Większość przeglądarek WWW wymaga ciągłej obecności człowieka, co staje się uciążliwe przy pobieraniu dużej ilości danych.
Wget potrafi podążać za odnośnikami zawartymi w stronach HMTL, XHTML i CSS oraz tworzyć lokalne wersje zdalnych witryn, w pełni odtwarzając strukturę katalogów oryginalnej strony. Jest to czasami nazywane "pobieraniem rekurencyjnym". Podczas takiego działania Wget respektuje ustalenia Standardu Robot Exclusion (/robots.txt). Możliwe jest poinstruowanie programu, by w pobieranych plikach przekształcał odnośniki tak, aby wskazywały na lokalne kopie, do przeglądania bez połączenia.
Wget został zaprojektowany tak, by działać solidnie również przy powolnych bądź niestabilnych połączeniach. Jeżeli pobieranie nie udaje się z powodu problemów z siecią, ponawia próby aż do ściągnięcia całości pliku. Jeśli dany serwer obsługuje taką możliwość, Wget nakaże kontynuację pobierania od miejsca, w którym przerwano.
Wget używa GNU getopt do przetwarzania argumentów wiersza poleceń, więc każda opcja ma długi i krótki format. Długie opcje są łatwiejsze do zapamiętania, lecz wpisuje się je dłużej. Można dowolnie łączyć oba style zapisu lub podać opcje po argumentach wiersza poleceń. Można więc użyć:
wget -r --tries=10 http://fly.srk.fer.hr/ -o log
Spacja pomiędzy opcją akceptującą argument i argumentem może być pomięta. Zamiast -o log można wpisać -olog.
Można umieścić kilka opcji, które nie wymagają argumentów razem, tak jak poniżej:
wget -drc <URL>
Jest to równoważne zapisowi:
wget -d -r -c <URL>
Ponieważ opcje mogą być podane po argumentach, może być konieczne oddzielenie ich za pomocą --. Poniższe polecenie spróbuje pobrać URL -x, zapisując niepowodzenie do log:
wget -o log -- -x
Opcje, które akceptują listy oddzielone przecinkami, respektują konwencję podania pustej listy, która usuwa ich wartosć. Jest to przydatne do wyczyszczenia ustawień .wgetrc np. jeśli .wgetrc użytkownika ustawia "exclude_directories" na /cgi-bin, to poniższy przykład najpierw zresetuje wartość, a następnie ustawi ją na /~nobody i /~somebody. Można również wyczyścić listę w .wgetrc.
wget -X " -X /~nobody,/~somebody
Większość opcji, która nie akceptuje argumentów są opcjami logicznymi tzn. takimi, których stan można opisać zmienną zero-jedynkową ("logiczną"). Na przykład --follow-ftp mówi Wgetowi, aby podążał za linkami FTP z plików HTML, a --no-glob nakazuje nieprzeprowadzania rozwijania masek URL-i FTP. Opcje logiczną są albo pozytywne, albo negatywne (te zaczynają się od --no). Wszystkie takie opcje mają kilka własności.
Jeżeli nie zaznaczono inaczej, to przyjmuje się, że domyślne zachowanie jest przeciwne niż to, które zapewnia opcja. Na przykład udokumentowane istnienie --follow-ftp wskazuje, że domyślnie nie podąża się za linkami FTP ze stron HTML.
Działanie opcji pozytywnych można odwrócić dodając --no- do ich nazw; analogicznie w przypadku opcji negatywnych (wyłączających) - usuwając przedrostek --no-. Może to wyglądać na niepotrzebne -- skoro domyślnym działaniem opcji pozytywnych jest nie robienie czegoś, to po co zapewniać metodę jawnego wyłączania ich? Wynika to z działania pliku startowego, który może zmienić wartości domyślne. Przykładowo, skorzystanie z wpisu follow_ftp = on w pliku .wgetrc powoduje, że Wget domyślnie podąża (follow) za dowiązaniami FTP, natomiast opcja --no-follow-ftp jest jedynym sposobem na przywrócenie wartości pierwotnie domyślnych z wiersza poleceń.
Czyta URL-e z pliku wejściowego plik, w związku z czym nie trzeba ich podawać w wierszu poleceń. Jeśli URL-e podano zarówno w wierszu poleceń, jak i w pliku wejściowym, to pierwsze zostaną pobrane pliki wymienione w wierszu poleceń. Jeśli nie podano opcji --force-html, to plik powinien składać się z zestawu URL-i - po jednym na wiersz.
Jednakże jeśli zostanie podana opcja --force-html, to plik będzie traktowany jak dokument html. Mogą się wówczas pojawić kłopoty z odnośnikami względnymi, które można rozwiązać dodając "<base href="url">" do pliku lub podając --base=url w wierszu poleceń.
Jeśli plik jest plikiem zewnętrznym, to dokument zostanie potraktowany automatycznie jako html, jeśli jego Content-Type pasuje do text/html. Co więcej, położenie pliku zostanie użyte jako href, jeśli nie podano innego.
Na przykład przy podaniu http://foo/bar/a.html do URL i odczytaniu przez Wgeta ../baz/b.html z pliku wejściowego, zostanie on przekształcony do http://foo/baz/b.html.
Użycie -O nie jest przeznaczone jako "użyj nazwy pliku zamiast tej z URL-a", lecz jest to odpowiednik przekierowania powłoki: wget -O plik http://foo jest zaprojektowane do działania jak wget -O - http://foo > plik; plik zostanie natychmiast przycięty, i cała zawartość pobierania zostanie do niego zapisana.
Z tego powodu, -N (sprawdzanie znacznika czasowego) nie jest obsługiwane w połączeniu z -O: ponieważ plik jest zawsze nowo tworzony, będzie miał on zawsze całkiem nowy znacznik czasowy. Przy użyciu tej kombinacji wyświetlane jest ostrzeżenie.
Podobnie, używanie -r lub -p z -O może nie działać zgodnie z przewidywaniami: Wget nie będzie pobierał pierwszego pliku do pliku, a reszty do zwykłych plików; cała zawartość pobierania zostanie umieszczona w pliku. Zostało to wyłączone w wersji 1.11, lecz powróciło (z ostrzeżeniem) w 1.11.2, ponieważ są przypadki, gdzie takie zachowanie może mieć sens.
Proszę zauważyć, że kombinacja z -k jest dozwolona tylko przy pobieraniu pojedynczego dokumentu, ponieważ w takim przypadku, wszystkie relatywne URI zostaną przekształcone w URI zewnętrzne. Opcja -k nie ma sensu przy wielu URI, które zostały pobrane do pojedynczego pliku, stąd -k może być użyte tylko, jeśli wyjściem jest zwykły plik.
Przy uruchomieniu Wget bez opcji -N, -nc, -r lub -p pobranie tego samego pliku do tego samego katalogu spowoduje pozostawienie pierwotnego egzemplarza pliku i nadanie drugiemu nazwy plik.1. Gdy plik będzie ściągany kolejny raz, trzeci egzemplarz otrzyma nazwę file.2, i tak dalej (jest tak również z opcją -nd, nawet jeśli działa równocześnie -r lub -p). Przy podanej opcji -nc, zachowanie takie jest wstrzymywane, a Wget odmawia pobrania nowszych kopii pliku. Dlatego też, "no-clobbe" jest w rzeczywistości złą nazwą dla tego trybu -- nie chroni on przed nadpisywaniem (gdyż temu zapobiegają już numeryczne przyrostki), ale przed zachowywaniem wielu wersji pliku.
Przy uruchomieniu Wget z -r lub -p, ale bez -N, -nd czy -nc, ponowne ściągnięcie pliku powoduje, że nowa kopia po prostu nadpisuje starą. Dodanie -nc zapobiega takiemu zachowaniu, skutkując zamiast tego zachowaniem pierwotnej wersji i ignorowaniem ewentualnych nowych kopii z serwera.
Przy uruchomieniu Wget z -N, z opcją -r lub -p albo bez niej, decyzja, czy ściągać nową wersję pliku czy też nie, zależy od znaczników czasu (dat modyfikacji) i rozmiarów lokalnego i zdalnego pliku. -nc nie można podawać równocześnie z -N.
Proszę zauważyć, że jeśli podano -nc, pliki z przyrostkami .html lub .htm będą odczytywane z dysku i przetwarzane tak, jakby zostały pobrane z sieci.
wget -c ftp://sunsite.doc.ic.ac.uk/ls-lR.Z
Jeśli w bieżącym katalogu istnieje plik ls-lR.Z, Wget przyjmie, że jest to początkowy fragment zdalnego pliku i zażąda od serwera kontynuacji pobierania od przesunięcia równego długości lokalnego pliku.
Proszę zauważyć, że nie ma potrzeby podawania tej opcji jeśli chcemy tylko, by aktualnie wywołany Wget ponownie próbował ściągać plik, w połowie którego zostało zerwane połączenie. Jest to zachowanie domyślne. Opcja -c wpływa tylko na wznawianie pobrań zaczętych przed bieżącym wywołaniem Wget i tylko dla tych plików, których lokalne kopie nadal istnieją.
Bez -c, polecenie z poprzedniego przykładu pobrałby po prostu zdalny plik do ls-lR.Z.1, zostawiając w spokoju obcięty plik ls-lR.Z.
Począwszy od Wget 1.7, jeśli użyjemy -c dla niepustego pliku, a okaże się, że serwer nie obsługuje kontynuacji ściągania, to program odmówi rozpoczęcia ściągania od zera, które prowadziłoby do zniszczenia istniejącej zawartości. Jeśli naprawdę chcemy ściągać od początku, powinniśmy usunąć taki plik.
Również od wersji 1.7, jeśli użyjemy -c dla pliku, którego rozmiar jest taki sam, jak na serwerze, to Wget odmówi ściągnięcia pliku i wypisze komunikat objaśniający. Tak samo dzieje się, gdy plik jest mniejszy na serwerze niż lokalnie (prawdopodobnie dlatego, że został zmieniony na serwerze od czasu naszej ostatniej próby ściągania) -- ponieważ "kontynuacja" jest bezsensowna, pobieranie nie zachodzi.
Z drugiej strony, przy stosowaniu -c, każdy plik, który jest większy na serwerze niż lokalnie będzie uważany za nie w pełni ściągnięty. Wówczas pobranych i doczepionych na koniec pliku lokalnego zostanie tylko "(wielkość(zdalny) - wielkośc(lokalny))" bajtów. W pewnych przypadkach takie zachowanie jest pożądane -- na przykład, można skorzystać z wget -c do ściągnięcia tylko nowej porcji danych, dopisanej na końcu zbioru danych czy pliku dziennika.
Jednakże, jeśli plik na serwerze jest większy dlatego, że został zmieniony, a nie tylko doklejono do niego dane, to w efekcie otrzymamy zniekształcony plik. Wget w żaden sposób nie może sprawdzić, czy lokalny plik jest poprawną częścią początkową zdalnego. Należy na to szczególnie uważać stosując -c w połączeniu z -r, gdyż każdy plik będzie uważany za kandydata na "nieukończone ściąganie".
Inną sytuacja, w której przy korzystaniu z -c uzyskuje się zniekształcony plik, zachodzi, gdy mamy do czynienia z ułomnym serwerami pośredniczącymi HTTP, wstawiającym łańcuch "transfer interrupted" do lokalnego pliku. W przyszłości będzie może dodana opcja "rollback", obsługująca ten przypadek.
Proszę zauważyć, że -c działa tylko z serwerami FTP i HTTP, które obsługują nagłówek "Range".
Domyślnie stosowany jest wskaźnik "bar". Rysowany jest wówczas pasek postępu złożony ze znaków graficznych ASCII (zwany czasem wskaźnikiem "termometrowym"), wskazujący stan pobierania. Jeżeli wyjściem programu nie jest TTY, to domyślnie zostanie użyty wskaźnik typu "dot".
Aby przełączyć się na zapis kropkowy należy użyć opcji --progres=dot. Śledzi on pobieranie wypisując kropki, a każda oznacza określoną ilość pobranych danych.
Przy korzystaniu z tego wskaźnika, można także ustalić styl. Wykonuje się to podając typ wskaźnika w postaci dot:styl. W różnych stylach pojedynczej kropce przypisuje się różne znaczenie. W stylu "default" każda kropka oznacza 1K (tysiąc), grupa liczy dziesięć kropek, a wiersz 50 kropek. Styl "binary" jest bardziej "komputerowy" -- 8K dla kropki, 16-kropkowe grupy i 48 kropek w wierszu (co daje 384K na wiersz). Przy pobieraniu dużych plików odpowiedni jest styl "mega" -- każda kropka symbolizuje pobrane 64K, w grupie jest osiem kropek, a w wierszu 48 (więc każdy wiersz zawiera 3M). Jeśli "mega" jest niewystarczające, można użyć "giga" - każda kropka symbolizuje 1M, w grupie jest osiem kropek, a w wierszu 32 (co daje 32M na wiersz).
Proszę zauważyć, że domyślny styl można ustawić za pomocą polecenia "progress" w swoim pliku .wgetrc. Ustawienie można przesłonić w wierszu poleceń. Wyjątkiem jest tu wyjście nie będące TTY, gdy pasek kropkowy jest faworyzowany w stosunku do paska kreskowego. Aby wymusić pasek kreskowy, należy użyć polecenia --progress=bar:force.
Domyślnie, gdy plik jest pobierany, używany jest znacznik czasu pliku zdalnego. Pozwala to na użycie opcji --timestamping w kolejnych wywołaniach wgeta. Czasem korzystniej jest ustawić znacznik czasu na podstawie rzeczywistego czasu pobierania; w tym celu powstała opcja --no-use-server-timestamps.
wget --spider --force-html -i bookmarks.html
Ta funkcja wymaga jeszcze wiele pracy, by Wget osiągnął możliwości zbliżone do prawdziwych pająków WWW.
Podczas interakcji z siecią, Wget może sprawdzić czas oczekiwania i przerwać operację, gdy zabiera zbyt dużo czasu. Zapobiega to takim anomaliom jak zawieszenie odczytu i niekończące się łączenie. Jedynym domyślnym czasem oczekiwania jest 900 sekundowe oczekiwanie na odczyt. Ustawienie "0", wyłączy go. Nie poleca się zmian domyślnych ustawień, chyba że wie się, co się robi.
Wszystkie opcje związane z czasami oczekiwania akceptują wartości dziesiętne oraz ułamki sekundowe, np. 0.1 jest poprawną (choć bezsensowną) wartością czasu oczekiwania. Wartości mniejsze od sekundy są przydatne do sprawdzania czasu odpowiedzi serwera lub w celu testowania opóźnienia sieciowego.
Zdalny serwer może oczywiście przerwać połączenie wcześniej, niż wynika to z wymagań tej opcji. Domyślny czas oczekiwania odczytu wynosi 900 sekund.
Opcja wymaga liczb dziesiętnych, połączonych z reguły z odpowiednim przyrostkiem; poprawną wartością jest na przykład --limit-rate=2.5k.
Proszę zauważyć, że implementację Wgeta jest wstrzymywanie transferu na pewny czas po tym, gdy odczyt sieciowy zabiera mniej czasu niż wynikałoby to z żądanej przepustowości. Ta strategia skutkuje ostatecznie spowolnieniem transferu TCP do wartości przybliżonej do podanej. Osiągnięcie zbalansowanego poziomu może chwilę potrwać, dlatego proszę się nie dziwić, że ograniczanie przepustowości nie działa zbyt dobrze w przypadku bardzo małych plików.
Określanie dużej wartości tej opcji przydaje się jeśli sieć lub komputer docelowa są wyłączone. Wówczas Wget może odczekać wystarczająco długo, by rozsądnie spodziewać się, że przed ponowną próbą błąd sieci został naprawiony. Na czas oczekiwania określony przez tę opcję wpływa --random-wait.
Domyślna wartość jaka zostanie przyjęta, wynosi 10 sekund.
W artykule z 2001, w pewnej publikacji poświęconej rozwijaniu oprogramowania na popularnych platformach klienckich, podano kod wykonujący taką analizę na bieżąco. Autor sugerował blokowanie na poziomie adresu klasy C, co ma gwarantować, że programy pobierające zostaną zablokowane niezależnie od zmiany adresów przedzielanych przez DHCP.
Opcja --random-wait powstała z powodu tej właśnie nierozważnej porady, zalecającej blokowanie wielu postronnych użytkowników ośrodka z powodu działań jednego z nich.
Warto pamiętać, że ograniczenie to nigdy nie dotyczy pobierania pojedynczego pliku. Tak więc, jeśli podamy wget -Q10k ftp://wuarchive.wustl.edu/ls-lR.gz, to zostanie ściągnięty cały plik ls-lR.gz. Tak samo dzieje się nawet wówczas, gdy w wierszu poleceń zostanie wyszczególnionych kilka URL-i. Ograniczenie wielkości jest jednak przestrzegane podczas pobierania rekurencyjnego lub według pliku wejściowego. Zatem, można spokojnie napisać wget -Q2m -i witryny -- po przekroczeniu ograniczenia ściąganie zostanie przerwane.
Ustawienie limitu na 0 lub na inf znosi ograniczenie pobierania.
W niektórych przypadkach zostało zgłoszone, że buforowanie nazw hostów nie jest pożądane nawet, gdy trwa to tylko tyle, ile działanie Wgeta. Po użyciu tej opcji, Wget wysyła nowe żądanie translacji DNS (bardziej precyzyjnie: nowe wywołanie gethostbyname lub getaddrinfo) przy każdym zestawianiu nowego połączenia. Proszę zauważyć, że opcja ta nie wpływa na buforowanie, które może być wykonywane przez odpowiednią bibliotekę lub w zewnętrznej warstwie buforowania, takiej jak NSCD.
Jeśli przeznaczenie tej opcji nie jest całkowicie jasne, prawdopodobnie nie ma potrzeby jej stosowania.
Domyślnie, Wget cytuje znaki, które nie są prawidłowe lub bezpieczne jako część nazwy pliku w danym systemie operacyjnym, jak również znaki kontrolne, które zwykle nie są wyświetlane. Opcja jest przydatna do zmiany wartości domyślnych, np. ponieważ plik został pobrany na partycję nienatywną, aby wyłączyć cytowanie znaków kontrolnych lub aby jeszcze bardziej ograniczyć zestaw znaków, do wartości ASCII.
Tryby są zestawem wartości tekstowych, oddzielonych przecinkiem. Akceptowanymi wartościami są: unix, windows, nocontrol, ascii, lowercase i uppercase. Wartości unix i windows są wzajemnie sprzeczne (jedna przesłoni drugą), podobnie jak lowercase i uppercase. Dwie ostatnie są wartościami specjalnymi, ponieważ nie zmieniają one zestawu znaków do cytowania, lecz wymuszają przekształcenie ścieżek plików lokalnych na, odpowiednio, małe litery i duże litery.
Jeśli użyje się trybu unix, to Wget będzie cytował znak / oraz znaki kontrolne z przedziałów 0-31 i 128-159. Jest to domyślne zachowanie w systemach uniksowych.
Przy podaniu trybu windows, Wget cytuje znaki \, |, /, :, ?, ", *, <, > oraz znaki kontrolne w przedziałach 0-31 i 128-159. Dodatkowo, w lokalnych nazwach plików, w trybie windowsowym Wget oddziela nazwę komputera i port znakiem + zamiast :, oraz używa @ zamiast ? do oddzielenia części zapytania w nazwie pliku od reszty. Dlatego, URL który w trybie uniksowym zostałby zachowany jako www.xemacs.org:4300/search.pl?input=blah, w trybie windowsowym zostanie zapisany jako www.xemacs.org+4300/search.pl@input=blah. Jest to domyślny tryb w systemie Windows.
Tryb nocontrol wyłącza cytowanie znaków kontrolnych. Opcja ta ma sens, gdy pobierane są URL-e zawierające znaki UTF-8 w systemie, który może zapisywać i wyświetlać nazwy plików w UTF-8 (część możliwych wartości bajtów używanych w sekwencjach UTF-8 mieści się w zakresie wartości opisywanych przez Wgeta jako "kontrolne".
Tryb ascii cytuje wszystkie bajty spoza zakresu znaków ASCII (czyli większe niż 127). Przydatne, gdy kodowanie nazw plików nie pasuje do tego używanego lokalnie.
Nie powinno się zwykle używać żadnej z tych opcji. Domyślnie, Wget obsługujący adresy IPv6 będzie używał rodziny adresów określonych przez rekord DNS hosta. Jeśli DNS odpowie zarówno adresem IPv4 jak i IPv6, to Wget spróbuje połączyć się z nimi po kolei, dopóki mu się to nie uda (zob. też opcja --prefer-family opisana poniżej).
Opcje te mogą posłużyć do celowego wymuszenia użycia rodzin adresów IPv4 lub IPv6 w systemach o podwójnej rodzinie adresów, zwykle w celu pomocy w debugowaniu lub do obsługi nieprawidłowej konfiguracji sieci. W tym samym czasie można użyć tylko jednej z opcji --inet6-only i --inet4-only. Żadna z nich nie jest dostępna we Wgecie skompilowanym bez obsługi IPv6.
Zapobiega się w ten sposób fałszywym błędom i próbom łączenia przy dostępnie do hostów, które obsługują zarówno adresy IPv6 jak i IPv4 z sieci IPv4. Na przykład www.kame.net tłumaczy się na 2001:200:0:8002:203:47ff:fea5:3085 i 203.178.141.194. Jeśli preferowaną rodziną adresów jest "IPv4", to one są używane jako pierwsze; jeśli preferowaną rodziną jest "IPv6", adresy IPv6 mają pierwszeństwo. Jeśli podaną wartością jest "none", to używana jest kolejność adresów zwracana przez DNS.
W przeciwieństwie do opcji -4 i -6, ta opcja nie wyklucza dostępu do którejś rodziny adresów - zmienia jedynie kolejność wykorzystania adresów. Proszę również zauważyć, że zmiana kolejności wykonywana za pomocą tej opcji jest stabilna - nie dotyka kolejności adresów w tej samej rodzinie. Oznacza to, że względna kolejność adresów IPv4 i adresów IPv6, we wszystkich przypadkach pozostaje bez zmian.
Można ustawić domyślną wartość obsługi IRI za pomocą polecenia iri w .wgetrc, które może być przesłonięte z wiersza poleceń.
Wget używa funkcji nl_langinfo(), a następnie zmiennej środowiskowej CHARSET w celu ustalenia kodowania. Jeśli nie powiedzie się to, używane jest ASCII.
Można ustawić domyślne kodowanie lokalne za pomocą polecenia local_encoding w .wgetrc, które może być przesłonięte z wiersza poleceń.
W przypadku HTTP, kodowanie zdalne można znaleźć w nagłówku HTTP Content-Type i w metaznaczniku Content-Type http-equiv.
Można ustawić domyślne kodowanie za pomocą polecenia remoteencoding w .wgetrc, które może być przesłonięte z wiersza poleceń.
Weźmy, na przykład, katalog ftp://ftp.xemacs.org/pub/xemacs/. Jeżeli pobierzemy go z -r, to lokalnie zostanie zachowany jako ftp.xemacs.org/pub/xemacs/. Mimo że opcja -nH pozwala na usunięcie części ftp.xemacs.org/, nadal utkniemy z pub/xemacs. Tu właśnie z pomocą przychodzi --cut-dirs. Powoduje, że Wget "nie widzi" zadanej liczby składowych zdalnego katalogu. Oto kilka przykładów pokazujących, jak działa opcja --cut-dirs.
Brak opcji -> ftp.xemacs.org/pub/xemacs/ -nH -> pub/xemacs/ -nH --cut-dirs=1 -> xemacs/ -nH --cut-dirs=2 -> . --cut-dirs=1 -> ftp.xemacs.org/xemacs/ ...
Jeśli chcemy po prostu pozbyć się struktury katalogów, to opcja ta jest podobna do kombinacji -nd i -P. Jednak --cut-dirs, w przeciwieństwie do -nd, nie pozbywa się podkatalogów -- na przykład, przy -nH --cut-dirs=1, podkatalog beta/ będzie, zgodnie z oczekiwaniami, umieszczony w xemacs/beta.
Proszę zauważyć, że pliki o zmienionych w ten sposób nazwach będą ponownie pobierane za każdym razem gdy będziemy odświeżać kopię lustrzaną witryny. Dzieje się tak, ponieważ Wget nie potrafi stwierdzić, że lokalny plik X.html odpowiada zdalnemu URL-owi X (gdyż nie wie, że ten URL tworzy wyjście typu text/html lub application/xhtml+xml).
Wget upewni się też (stan na wersję 1.12), że pobierane pliki typu text/css kończą się przyrostkiem .css. Zmieniono nazwę tej opcji z --html-extension, aby lepiej oddać to nowe zachowanie. Stara nazwa opcji jest wciąż akceptowana, ale jest przestarzała.
W przyszłości, opcja może zostać poszerzona, aby objąć również przyrostki innych typów zawartości, w tym takich, które nie są przetwarzane przez Wget.
Inną metodę podania nazwy i hasła użytkownika jest wyszczególnienie ich w samym URL-u. Obie te metody ujawniają hasło każdemu, kto zechce uruchomić ps. Żeby uchronić hasła przed podpatrzeniem, należy przechowywać je w pliku .wgetrc lub .netrc i, za pomocą chmod, zapewnić tym plikom ochronę przed innymi użytkownikami. Jeżeli hasła są naprawdę ważne, w tych plikach też nie należy trzymać ich na stałe -- proszę usunąć je z plików zaraz po rozpoczęciu pobierania przez Wgeta.
Opcja jest przydatna, gdy połączenia stałe (keep-alive) nie działają poprawnie, np. z powodu błędu serwera lub niemożności obsługi takich połączeń przez skrypty po stronie serwera.
Domyślnie, buforowanie jest dozwolone.
Na ogół korzysta się z tej opcji przy tworzeniu kopii lustrzanych tych ośrodków, które do skorzystania z części lub całości zasobów wymagają zalogowania się. Proces logowania się zwykle polega na tym, że po otrzymaniu od nas informacji uwierzytelniającej i jej zweryfikowaniu serwer WWW wysyła ciasteczko HTTP. Następnie, gdy przeglądarka sięga do zasobów, odsyła serwerowi otrzymane ciasteczko, potwierdzając w ten sposób naszą tożsamość.
Utworzenie kopii tego rodzaju witryny wymaga wysyłania przez Wget takich samych ciasteczek, jakie podczas komunikowania się z tym ośrodkiem przesyła nasza przeglądarka. Osiąga się to za pomocą --load-cookies -- wystarczy wskazać programowi lokalizację pliku cookies.txt, a on wyśle te same ciasteczka, które w tej samej sytuacji wysłałaby przeglądarka. Poszczególne przeglądarki przechowują tekstowe pliki ciasteczek w różnych miejscach:
Jeśli nie można skorzystać z --load-cookies, jest jeszcze inna możliwość. Jeśli używana przeglądarka udostępnia "menedżera plików cookie", można z niego skorzystać, żeby podglądnąć ciasteczka, jakie zostały wykorzystane podczas uzyskiwania dostępu do witryny, której kopię chce się utworzyć. Proszę zapisać nazwę i wartość ciasteczka, a następnie ręcznie nakazać Wgetowi wysłanie ciasteczka o zadanej postaci, obchodząc równocześnie "oficjalny" kod odpowiedzialny za obsługę ciasteczek:
wget --no-cookies --header "Cookie:I<nazwa>=I<wartość>"
Ponieważ format pliku ciasteczek nie przechowuje zwykle ciasteczek sesyjnych, Wget oznacza je znacznikiem czasowym przedawnienia równym 0. Opcja --load-cookies rozpoznaje je jako ciasteczka sesyjne, lecz może to zmylić inne przeglądarki. Proszę zwrócić uwagę, że tak załadowane ciasteczka będą traktowane jak inne ciasteczka sesji, co oznacza, że trzeba użyć opcji --keep-session-cookies ponownie, aby zachować je za pomocą opcji --save-cookies.
Wywołany z tą opcją, Wget będzie ignorował nagłówek Content-Length, tak jakby nie istniał.
Możliwe jest określenie więcej niż jednego dodatkowego nagłówka przez kilkakrotne podanie opcji --header.
wget --header='Accept-Charset: iso-8859-2' \ --header='Accept-Language: hr' \ http://fly.srk.fer.hr/
Podanie pustego łańcucha jako nagłówka kasuje wszystkie uprzednio zdefiniowane przez użytkownika nagłówki.
Od Wgeta 1.10, można użyć tej opcji do przesłonięcia nagłówków, które byłyby wygenerowane automatycznie. Oto przykład nakazania Wgetowi połączenie z komputerem lokalnym, jednak podając foo.bar w nagłówku Host:
wget --header="Host: foo.bar" http://localhost/
W wersjach poniżej 1.10, takie użycie opcji --header powodowało wysyłanie zduplikowanych nagłówków.
Odnoszą się do tego podobne zagadnienia związane z bezpieczeństwem, jak w przypadku opcji --http-password.
Protokół HTTP pozwala klientom na podanie, za pomocą pola User-Agent nagłówka swojej tożsamości. Umożliwia to rozróżnianie oprogramowania WWW, zwykle do celów statystycznych lub śledzenia naruszeń protokołu. Wget normalnie przedstawia się jako Wget/wersja, gdzie wersja jest aktualnym numerem wersji programu.
Znane są jednak pewne witryny narzucające politykę przykrawania wyników stosownie do informacji dostarczonej im w polu User-Agent. Mimo iż koncepcyjnie nie jest to taki zły pomysł, zaczął być nadużywany przez serwery odmawiające informacji klientom innym niż (kiedyś) Netscape lub, częściej, Internet Explorer. Ta opcja umożliwia zmianę linii User-Agent wysyłanej przez Wget. Nie zachęcamy do używania tej opcji, chyba że z pełną świadomością.
Podanie pustego łańcucha za pomocą --user-agent="" powoduje, że Wget nie będzie wysyłał nagłówka User-Agent w żądaniach HTTP.
Proszę zauważyć, że wget nie wymaga aby zawartość była w postaci "klucz1=wartość1&klucz2=wartość2" ani nie sprawdza tego. Wget przesyła takie dane, jakie mu dostarczono. Większość serwerów oczekuje jednak, aby dane POST występowały w powyższej postaci przy przetwarzaniu formularzy HTML.
Proszę zwrócić uwagę, że Wget musi znać rozmiar danych POST z góry. W związku z tym, argumentem do opcji --post-file musi być zwykły plik; przekazanie potoku FIFO lub czegoś takiego jak /dev/stdin nie zadziała. Nie jest do końca jasne, jak obejść to ograniczenie wpisane w protokół HTTP/1.0. Choć HTTP/1.1 wprowadza transfer fragmentaryczny, który nie wymaga wiedzy o długości żądania z góry, to klient nie może go używać, dopóki nie wie, że komunikuje się z serwerem HTTP/1.1. Nie może tego wiedzieć, dopóki nie otrzyma odpowiedzi, która wymaga pełnego żądania...
Uwaga: Według stanu na wersję 1.15 przy przekierowaniu Wgeta po sfinalizowaniu żądania POST, zachowanie programu będzie zależało od kodu zwróconego przez serwer. Jeśli będzie to 301 Moved Permanently, 302 Moved Temporarily lub 307 Temporary Redirect, Wget, zgodnie z RFC2616,, będzie kontynuował wysyłanie żądania POST. Jeśli serwer chce zmienić metodę żądań klienta przy przekierowaniu powinien wysłać kod 303 See Other.
Przykład pokazuje, jak zalogować się do serwera używającego POST, a następnie przejść do pobierania żądanych stron, dostępnych prawdopodobnie tylko dla użytkowników uwierzytelnionych:
# Logowanie do serwera. Można to zrobić tylko raz. wget --save-cookies cookies.txt \ --post-data 'user=foo&password=bar' \ http://server.com/auth.php # Teraz przechwytujemy stronę lub strony o które nam chodzi. wget --load-cookies cookies.txt \ -p http://server.com/interesting/article.php
Jeśli serwer używa ciasteczek sesji do śledzenia uwierzytelnienia użytkownika, to powyższy przykład nie zadziała, ponieważ --save-cookies nie zachowa ich (podobnie jak przeglądarki), a plik cookies.txt będzie pusty. W takim przypadku, oprócz --save-cookies należy użyć również --keep-session-cookies.
Obecnie --body-file nie służy do transmisji plików jako całości. Wget nie obsługuje w tej chwili "multipart/form-data" do transmisji danych, a jedynie "application/x-www-form-urlencoded". W przyszłości może się to zmienić tak, aby wget wysyłał --body-file jako cały plik zamiast wysyłania jego zawartości na serwer. Proszę zauważyć, że Wget musi znać wpierw zawartość danych BODY, dlatego argument do opcji --body-file powinien być zwykłym plikiem. Więcej szczegółów znajduje się w opisie opcji --post-file. Powinno się podawać albo opcję --body-data albo --body-file.
Jeśli Wget zostanie przekierowany po sfinalizowaniu żądania, wznowi bieżącą metodę i będzie wysyłał żądanie GET aż do zakończenia przekierowania. Jest tak w przypadku wszystkich kodów z wyjątkiem 307 Temporary Redirect, który służy do bezpośredniego wskazania, ze metoda nie powinna się zmienić. Inny wyjątek ma miejsce gdy metoda jest ustawiona na "POST", ponieważ wówczas przestrzegane są zasady określone przez --post-data.
Opcja jest przydatna niektórym programom CGI pobierającym pliki, które używają nagłówków Content-Disposition do opisania nazwy pobieranego pliku.
Używanie tej opcji nie jest zalecane, jako że została przeznaczona jedynie do obsługiwania kilku zapomnianych serwerów, które nigdy nie wysyłają pytań o uwierzytelnienie HTTP, lecz akceptują nieżądane informacje uwierzytelniające, oprócz uwierzytelnienia opartego na formularzu.
W celu obsługi szyfrowanych pobierań HTTP (HTTPS), Wget musi być skompilowany z dodatkową biblioteką SSL - obecnie OpenSSL. Jeśli Wget jest skompilowany bez obsługi SSL, żadna z tych opcji nie będzie dostępna.
Podanie SSLv2, SSLv3 lub TLSv1 wymusza użycie odpowiedniego protokołu. Jest to przydatne przy komunikacji ze starymi i błędnymi implementacjami SSL serwera, które nie pozwalają na łatwy wybór poprawnej wersji protokołu przez bibliotekę SSL. Na szczęście, takie serwery są rzadkością.
Określenie PFS wymusza używanie zestawów kluczy Perfect Forward Security (PFS). W skrócie, PFS zwiększa bezpieczeństwo tworząc jednorazowy klucz do każdego połączenia. Używa też nieco więcej mocy CPU zarówno na kliencie jak i na serwerze. Używamy kluczy, które są uznawane za bezpieczne (tzn. np nie jest to MD4) oraz protokołu TLS.
Od wersji 1.10, Wget domyślnie weryfikuje certyfikat serwera w odniesieniu do znanych ośrodków certyfikacji, przerywając nawiązanie połączenia SSL (handshaking) i pobieranie pliku, jeśli weryfikacja się nie powiedzie. Choć zwiększa się w ten sposób bezpieczeństwo pobierań, zrywa to jednak kompatybilność z niektórymi stronami, które działały z poprzednimi wersjami Wgeta, szczególnie korzystającymi z podpisanych przez siebie, wygasłych lub niepoprawnych z innego powodu certyfikatów. Opcja ta wymusza "niebezpieczny" tryb działania, który zmienia błędy weryfikacji certyfikatów w ostrzeżenia i pozwala kontynuować.
Jeśli wystąpią błędy "weryfikacji certyfikatu" lub błąd o treści "nazwa w certyfikacie nie pasuje do żądanej nazwy hosta", można użyć tej opcji aby ominąć weryfikację i kontynuować pobieranie. Proszę używać tej opcji tylko wtedy, gdy jest się przekonanym o wiarygodności strony lub gdy kompletnie nie dba się o poprawność jej certyfikatu. Przy przesyłaniu poufnych lub ważnych danych, niesprawdzanie certyfikatu jest zwykle bardzo złym pomysłem.
Bez tej opcji, Wget szuka certyfikatów CA w lokalizacji systemowej, wybranej podczas instalacji OpenSSL.
Bez tej opcji, Wget szuka certyfikatów CA w lokalizacji systemowej, wybranej podczas instalacji OpenSSL.
W takich systemach biblioteka SSL wymaga zewnętrznego źródła losowości do rozpoczęcia pracy. Może być EGD (por. --egd-file poniżej) lub odczyt z zewnętrznego źródła podanego przez użytkownika. Jeśli nie poda się tej opcji, Wget poszuka losowych danych w $RANDFILE lub, jeśli zmienna nie jest ustawiona, w $HOME/.rnd. Jeśli żadna z metod się nie powiedzie, prawdopodobnie nie będzie się dało zastosować szyfrowania SSL.
Pojawienie się błędu "Could not seed OpenSSL PRNG; disabling SSL." oznacza, że należy zapewnić losowe dane korzystając z jednej z powyższych metod.
OpenSSL pozwala użytkownikowi podać swoje źródło entropii za pomocą zmiennej środowiskowej RAND_FILE. Jeśli pozostanie ona nieustawiona lub podany plik nie tworzy wystarczającej losowości, OpenSSL odczyta dane losowe z gniazda EGD podanego za pomocą opisywanej opcji.
Jeśli nie poda się tej opcji (ani nie użyje się równoważnego polecenia uruchomieniowego), EGD nigdy nie zostanie użyte. Mechanizm ten nie jest potrzebny w nowoczesnych systemach uniksowych, obsługujących /dev/random.
Inną metodę podania nazwy i hasła użytkownika jest wyszczególnienie ich w samym URL-u. Obie te metody ujawniają hasło każdemu, kto zechce uruchomić ps. Żeby uchronić hasła przed podpatrzeniem, należy przechowywać je w pliku .wgetrc lub .netrc i, za pomocą chmod, zapewnić tym plikom ochronę przed innymi użytkownikami. Jeżeli hasła są naprawdę ważne, w tych plikach też nie należy trzymać ich na stałe -- proszę usunąć je z plików zaraz po rozpoczęciu pobierania przez Wgeta.
Proszę zauważyć, że mimo iż Wget zapisuje w tym przypadku do pliku o znanej nazwie, nie jest to dziura w zabezpieczeniach w sytuacji, gdy użytkownik stworzy .listing jako dowiązanie symboliczne do /etc/passwd czy innego pliku i poprosi superużytkownika (roota) o uruchomienie Wget w tym katalogu. W zależności od użytych opcji, Wget albo odmówi zapisu do .listing (co spowoduje niepowodzenie operacji na maskach, rekurencyjnej czy zależnej od znaczników czasu), albo dowiązanie symboliczne zostanie usunięte i zastąpione faktycznym plikiem .listing, albo też listing zostanie zapisany do pliku .listing.numer.
Choć ta sytuacja nie stwarza kłopotów, jednak root nie powinien nigdy uruchamiać Wget w katalogu niezaufanego użytkownika. Użytkownik taki mógłby na przykład dowiązać index.html do /etc/passwd i poprosić "root"a o uruchomienie Wget z opcjami -N lub -r, tak że plik ten zostałby nadpisany.
wget ftp://gnjilux.srk.fer.hr/*.msg
Domyślnie obsługa masek będzie włączona jeśli URL zawiera znaki uogólniające. Tej opcji można użyć do włączenia bądź wyłączenia obsługi masek na stałe.
Może zajść potrzeba ujęcia URL-a w znaki cudzysłowu, by uchronić go przed rozwinięciem przez powłokę. Obsługa masek powoduje, że Wget oczekuje listingu katalogu, którego postać jest zależna od systemu. Z tego powodu obecnie działa tylko z uniksowymi serwerami FTP (i z tymi, które potrafią emulować wyjście uniksowego ls).
Jeśli komputer ma bezpośrednie połączenie z Internetem, to zarówno pasywne jak i aktywne FTP powinny działać tak samo dobrze. Za większością zapór sieciowych i konfiguracji NAT, pasywny FTP ma większą szansę działania. Jednak w niektórych rzadkich konfiguracjach zapór, aktywny FTP działa, a pasywny FTP nie. Jeśli zachodzi prawdopodobieństwo, że ma miejsce ta sytuacja, proszę użyć opisywanej opcji lub ustawić w swym pliku konfiguracyjnym passive_ftp=off.
Przy opcji --retr-symlinks Wget podąża za dowiązaniem symbolicznym i pobiera plik, na który ono wskazuje. Obecnie opcja ta nie powoduje tłumaczenia dowiązań symbolicznych katalogów i dalszego pobierania rekurencyjnego w nim, lecz w przyszłości powinna otrzymać taką możliwości.
Proszę zauważyć, że przy pobieraniu pliku (nie katalogu) podanego w wierszu poleceń, a nie osiągniętego z powodu pobierania rekurencyjnego, opcja nie odnosi skutku. W takich przypadkach plik docelowy dowiązania jest zawsze pobierany.
wget -r -nd --delete-after http://whatever.com/~popular/page/
Opcja -r nakazuje pobieranie rekurencyjne, a -nd nietworzenie katalogów.
Proszę zauważyć, że --delete-after usuwa pliki z lokalnego komputera. Nie wydaje polecenia DELE, na przykład zdalnym ośrodkom FTP. Także jeśli podano --delete-after, to --convert-links jest ignorowane, więc przede wszystkim pliki .orig po prostu nie są tworzone.
Każdy odnośnik będzie zmieniony na jeden z dwu sposobów:
Przykład: jeśli ściągnięty plik /foo/doc.html jest powiązany z z /bar/img.gif, również ściągniętym, to odnośnik w doc.html zostanie zmieniony tak, by wskazywał na ../bar/img.gif. Ten rodzaj przekształcenia działa bezproblemowo dla dowolnej kombinacji katalogów.
Przykład: jeśli ściągnięty plik /foo/doc.html jest powiązany z z /bar/img.gif (lub z ../bar/img.gif), to odnośnik w doc.html zostanie zmieniony tak, by wskazywał na http://hostname/bar/img.gif.
Z tego powodu, przeglądanie lokalne działa niezawodnie: jeśli powiązany plik był ściągnięty, to odnośnik wskazuje na jego lokalną nazwę, jeśli nie był -- to na pełny adres internetowy, a nie pojawia się popsuty odnośnik. Konwersja pierwotnych odnośników na odnośniki względne zapewnia nam możliwość przesuwania pobranej hierarchii katalogów do innego katalogu.
Proszę zauważyć, że dopiero na samym końcu pobierania Wget może rozpoznać, które odnośniki zostały ściągnięte. Z tego powodu, opcja -k wykonuje swoją pracę po zakończeniu wszystkich pobrań.
Przy zwykłym trybie pracy, podczas pobierania pojedynczej strony HTML, ewentualne powiązane dokumenty, które mogą być potrzebne do poprawnego jej wyświetlenia, nie są pobierane. Pomóc może użycie opcji -r z -l, ale ponieważ Wget normalnie nie odróżnia dokumentów zewnętrznych od włączonych, na ogół pozostaje się z "oskubanymi dokumentami", którym brakuje potrzebnych elementów towarzyszących.
Na przykład, powiedzmy, że dokument 1.html zawiera znacznik <IMG> odnoszący się do 1.gif i znacznik <A> wskazujący na zewnętrzny dokument 2.html. Powiedzmy, że 2.html jest podobny, tyle, że jego obrazkiem jest 2.gif a odnośnik wskazuje na 3.html. Załóżmy, że kontynuujemy takie zależności aż do jakiejś dowolnie dużej liczby.
Jeśli wykona się polecenie:
wget -r -l 2 http://I<strona>/1.html
to zostaną pobrane 1.html, 1.gif, 2.html, 2.gif i 3.html. Jak widać, 3.html nie posiada towarzyszącego mu elementu, gdyż Wget w celu określenia miejsca, gdzie powinien przerwać rekurencję po prostu zlicza liczbę skoków (aż do 2) od początkowego 1.html. Jednak przy takim poleceniu:
wget -r -l 2 -p http://I<strona>/1.html
zostaną ściągnięte wszystkie powyższe pliki oraz wymagany przez 3.html plik 3.gif. Podobnie,
wget -r -l 1 -p http://<strona>/1.html
spowoduje pobranie 1.html, 1.gif, 2.html i 2.gif. Można by sądzić, że:
wget -r -l 0 -p http://I<strona>/1.html
pobrałoby tylko 1.html i 1.gif, ale niestety tak nie jest, gdyż -l 0 jest równoważnikiem -l inf -- czyli nieskończonej rekurencji. Do pobrania pojedynczej strony HTML (lub ich grupy, wszystkich podanych w wierszu poleceń lub w pliku wejściowym URL-i -i) i towarzyszących jej (lub im) elementów, wystarczy pominąć -r i -l:
wget -p http://<strona>/1.html
Proszę zauważyć, że Wget zachowa się tak, jakby podano opcję -r, ale zostanie pobrana tylko pojedyncza strona i jej elementy. Program nie będzie podążał za odnośnikami z tej strony do zewnętrznych dokumentów. Faktycznie, do ściągania pojedynczej strony i wszystkich towarzyszących jej elementów (nawet jeśli leżą one na odrębnych serwerach WWW) i upewnienia się, że całość lokalnie poprawnie się wyświetla, autor oprócz -p korzysta z kilku dodatkowych opcji:
wget -E -H -k -K -p http://<strona>/<dokument>
Kończąc ten temat, warto wiedzieć, że Wget uważa za odnośnik do dokumentu zewnętrznego każdy URL podany w znaczniku <A>, <AREA> lub <LINK>, oprócz <LINK REL="stylesheet">.
Zgodnie ze specyfikacją, komentarze HTML są wyrażone jako deklaracje SGML. Deklaracja jest specjalnym znacznikiem, rozpoczynającym się <! i kończącym się >, np. <!DOCTYPE ...>, która może zawierać dodatkowe komentarze, między parą ograniczników --. Komentarze HTML są "pustymi deklaracjami", bez tekstu niebędącego komentarzem. Stąd <!--foo--> jest poprawnym komentarzem, jak również <!--one-- --two-->, lecz <!--1--2--> nim nie jest.
Z drugiej strony, większość piszącym HTML nie odczytuje komentarzy jako cokolwiek innego poza tekstem ograniczonym <!-- i -->, co nie jest tym samym. Np. coś takiego: <!------------> jest poprawnym komentarzem o ile liczba minusów jest wielokrotnością czterech (sic!). Jeśli tak nie jest, to ściśle mówiąc komentarz kończy się dopiero po następnym wystąpieniu --, które może nastąpić np. na końcu dokumentu. Z tego powodu, wiele popularnych przeglądarek internetowych całkowicie ignoruje specyfikację i implementuje coś, czego użytkownicy mogą się spodziewać: komentarze ograniczone <!-- i -->.
Do wersji 1.9 Wget interpretował komentarze w sposób ścisły, co powodowało wybrakowanie wielu linków w stronach internetowych wyświetlających się poprawnie w przeglądarkach, lecz mających nieszczęście w postaci niezgodnych z normą komentarzy. Począwszy od wersji 1.9, Wget dołączył do grona klientów implementujących "naiwne" komentarze, zamykając każdy komentarz po pierwszym wystąpieniu -->.
Jeśli zajdzie potrzeba ścisłego parsowania komentarzy, ta opcja je włączy.
Niegdyś, ta opcja była najlepszym wyborem do ściągania pojedynczej strony razem z jej elementami, użyta w wierszu poleceń:
wget --ignore-tags=a,area -H -k -K -r http://<strona>/<dokument>
Jednak autor tej opcji przeszedł przez stronę ze znacznikami typu <LINK REL="home" HREF="/"> i uświadomił sobie, że -G nie wystarcza. Nie można po prostu nakazać Wget ignorowania <LINK>, gdyż wówczas nie będą ściągane arkusze stylów. Obecnie najlepszym sposobem pobierania pojedynczej strony razem z jej elementami jest specjalnie przeznaczona do tego opcja --page-requisites.
Wget obsługuje serwery pośredniczące do pobierań przez HTTP i FTP. Standardową metodą podawania położenia serwera pośredniczącego w przypadku Wgeta, są poniższe zmienne środowiskowe:
W przypadku wystąpienia problemów Wget może zwrócić jeden z poniższych kodów zakończenia.
Oprócz kodów 0 i 1, kody zakończenia o mniejszej wartości liczbowej mają pierwszeństwo w sytuacji, gdy wystąpi wiele typów błędów.
W wersjach Wgeta do 1.12, kody zakończenia były niespójne i niezbyt pomocne. Pobierania rekurencyjne zawsze zwracały 0 (powodzenie) bez względu na wystąpienie ewentualnych błędów, a nierekurencyjne zwracały zawsze kod zakończenia odpowiadający ostatniej próbie pobierania.
Zachęcamy do zamieszczania zgłoszeń błędów dotyczących GNU Wget w systemie błędów (więcej szczegółów pod adresem <http://wget.addictivecode.org/BugTracker>).
Przed faktycznym przedłożeniem zgłoszenia błędu, proszę spróbować zastosować się do kilku prostych wskazówek.
Ponadto, choć co prawda prawdopodobnie autor będzie zainteresowany zawartością pliku .wgetrc użytkownika, zwykłe skopiowanie go do wiadomości o błędzie jest raczej złym pomysłem. Zamiast tego, należy najpierw sprawdzić, czy błąd powtarza się przy .wgetrc przeniesionym w inne miejsce. Proszę przesłać odpowiednie fragmenty tego pliku tylko wtedy, gdy okaże się, że błąd zależy od ustawień .wgetrc.
Uwaga: proszę upewnić się, że usunęło się wszystkie potencjalnie prywatne dane z dziennika debugowania, przed wysłaniem go na adres zgłoszeń błędów. Opcja -d nie będzie starała się zbierać danych prywatnych, lecz dziennik będzie zawierał dość kompletny zapis komunikacji Wgeta z serwerem, co może obejmować także hasła i część pobranych danych. Zgłoszenia błędów są archiwizowane publicznie, tak więc należy uznać, że zgłoszenia błędów są również dostępne publicznie.
Nie jest to kompletny podręcznik GNU Wgeta. Więcej informacji, w tym pełniejszy opis niektórych opcji oraz wiele poleceń możliwych do zastosowania w plikach .wgetrc i z opcją -e znajduje się we wpisie wget w GNU Info.
Pierwotnie napisane przez Hrvojego Nikšicia <hniksic@arsdigita.com>.
Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
Zezwala się na kopiowanie, rozpowszechnianie i/lub modyfikowanie tego dokumentu na warunkach Licencji Wolnej Dokumentacji GNU (GNU Free Documentation License) w wersji 1.3 lub jakiejkolwiek nowszej wersji opublikowanej przez Fundację Wolnego Oprogramowania, przy czym Sekcjami niezmiennymi są "GNU General Public License" i "GNU Free Documentation License", bez treści przedniej lub tylnej strony okładki. Egzemplarz licencji zamieszczono w sekcji zatytułowanej "GNU Free Documentation License".
Autorami polskiego tłumaczenia niniejszej strony podręcznika man są: Wojtek Kotwica (PTM) <wkotwica@post.pl> i Michał Kułach <michal.kulach@gmail.com>.
Polskie tłumaczenie jest częścią projektu manpages-pl; uwagi, pomoc, zgłaszanie błędów na stronie http://sourceforge.net/projects/manpages-pl/. Jest zgodne z wersją 1.15 oryginału.
2014-06-06 | GNU Wget 1.15 |