NSIS - Как рекурсивно копировать, исключая файлы? - PullRequest
10 голосов
/ 14 июля 2010

Мне нужно скопировать каталог рекурсивно, но исключить пару каталогов внутри него.

В документации для NSIS сказано, что команда File принимает параметры /r и /x, но я не могу их получитьдля правильной совместной работы.

Структура моего каталога, содержащего мой скрипт .nsi:

parent-dir
    dir-to-exclude-1
        setup.nsi
    dir-to-copy-1
    dir-to-copy-2
    dir-to-copy-3
    dir-to-exclude-2

И я попробовал следующее, но у меня это не работает:

SetOutPath $INSTDIR
File /r "..\**" /x "..\dir-to-exclude-1\**" /x "..\dir-to-exclude-2\**"  

Заранее спасибо за любую помощь.

Редактировать: Я все ближе, так что теперь у меня есть:

File /r /x \dir-to-exclude-1\*.* /x \dir-to-exclude-2\*.*  ..\*

Теперь это будетскомпилируйте и установите все файлы, но без исключения каталогов, которые я хочу.Любое руководство о том, как я могу исключить это?

1 Ответ

5 голосов
/ 15 июля 2010

Разобрался с помощью коллеги. Просто дайте имена каталогов без * *:

File /r /x dir-to-exclude-1 /x dir-to-exclude-2 /x installer  ..\*
...