2012-02-13 9 views
6

Powiedzmy mam:Jak wymusić wget pominięcie łączy prowadzących do elementów nadrzędnych?

http://svnserver/repoid/appname/language/module/ 

próbuję pobrać wszystko poniżej moduł węzła, niestety strona zawiera linki do obu - pozycje poniżej i powyżej w hierarchii elementów (podobnie jak bash ls -ltr wyjściu) . Więc kiedy używam wget z opcją pobierania rekursywnego, w końcu otrzymuję pełną stronę internetową (repozytorium svn), a nie tylko moduł, którego potrzebuję.

Czy istnieje jakaś sztuczka, która uniemożliwi wget następujące linki wskazujące elementy rodzica?

+1

Jeśli jest to repozytorium svn, dlaczego nie użyć polecenia 'svn export http: // svnserver/repoid/appname/language/module /'? –

+0

Nie mam i nie mogę mieć svn na zdalnej maszynie :) – torm

+0

Jak wspomniano poniżej, używasz przełącznika '-np', ale pamiętaj, aby dodać końcowy ukośnik, jeśli adres URL kończy się katalogiem zamiast plik, w przeciwnym razie przełącznik nie będzie działać. – Synetech

Odpowiedz

9

Wygląda na to, że szukasz parametru --no-parent.

Z wyjścia wget --help

-np, --no-parent     don't ascend to the parent directory. 
+0

idealny, sprawdzałem to wcześniej, ale najprawdopodobniej zrobiłam literówkę. -np działa. dzięki – torm

+0

Czy istnieje sposób na pominięcie tworzenia katalogów nadrzędnych? (wszystko powyżej mojego katalogu modułów) – torm

+0

-p (--pages-requisites) jest użyteczne w -np, ponieważ obrazy często znajdują się w innej części hierarchii. – noah

3

Od man wget:

-np

--no-parent

Nigdy nie wchodzi do katalogu nadrzędnego przy pobieraniu rekurencyjnie. Jest to przydatna opcja, ponieważ gwarantuje, że zostaną pobrane tylko pliki poniżej określonej hierarchii.

Powiązane problemy