Como excluir determinados diretórios ao usar o wget?

12

Eu gostaria de baixar um diretório de um FTP, que contém alguns códigos-fonte. Inicialmente, eu fiz isso:

wget -r ftp://path/to/src

Infelizmente, o diretório em si é o resultado de um check-out do SVN; portanto, existem muitos diretórios .svn e o rastreamento sobre eles levaria mais tempo. É possível excluir esses diretórios .svn?

anta40
fonte

Respostas:

18
wget -X directory_to_exclude[,other_directory_to_exclude] -r ftp://URL_ftp_server

SERVER
    |-logs
    |-etc
    |-cache
    |-public_html
      |-images
      |-videos ( want to exclude )
      |-files
      |-audio  (want to exclude)

wget -X /public_html/videos,/public_html/audio ftp:SERVER/public_html/*
josejavierfm
fonte
1
Na verdade, este parece ser o comentário correto. A opção de exclusão de diretórios não realiza padrões / expressões regulares, portanto, você deve incluir o caminho inteiro (da raiz). A resposta mais votada parece estar incorreta para todos, exceto os casos triviais.
John O
1
Concordo. Embora a documentação declare que curingas podem ser usados, não consegui fazê-los funcionar.
Diomidis Spinellis
2
os curingas funcionam, mas são interpretados primeiro no nível do shell, portanto, você deve escapar deles para funcionar.
Joop Kiefte 01/10/19
5
wget --exclude-directories=.svn -r ftp://path/to/src
quanta
fonte