2010-07-14 423 views
10

我需要递归复制一个目录,但排除其中的几个目录。NSIS - 如何在排除文件的同时递归复制?

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\*.* ..\* 

现在它将会编译并安装的所有文件,但不排除我想要的目录。任何指导我如何排除这些?

回答

5

在同事的帮助下找出了它。只需给出没有任何*的目录名称:

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