mirror -R -e -x ^\.svn$ /documents/ /test
está bem.
O truque é que, como .svn é um diretório , ele será correspondido apenas por um padrão que termina em uma barra:
mirror -R -e -x ^\.svn/$ /documents/ /test
Eu quero espelhar um diretório usando lftp
, mas quero excluir alguns subdiretórios.
Eu tentei
mirror -R -e -x ^\.svn$ /documents/ /test
e
mirror -R -e -x /^\.svn$/ /documents/ /test
mas nenhum deles excluiu os diretórios .svn .
Estou usando
--exclude /\..+/$
para excluir todas as pastas que começam com um ponto.
Nas minhas experiências, parece que os padrões de inclusão e exclusão são comparados com o caminho inteiro sem inicial / mas com um / para um diretório.
Assim, se você está tentando combinar um nome de diretório como .svn, que pode ocorrer em qualquer nível na árvore, você precisa deste RE:
(^\|/).svn/
A alternativa ^ corresponde ao .svn no nível superior e a / alternativa corresponde a qualquer nível abaixo disso.
O | personagem é significativo para lftp por isso precisa ser sloshed.
Tags ftp