2010-07-14 4 views
10

Ho bisogno di copiare una directory in modo ricorsivo ma escludere un paio di directory al suo interno.NSIS - Come copiare ricorsivamente escludendo i file?

La documentazione per NSIS indica che il comando File accetta i parametri /r e /x, ma non riesco a farli funzionare correttamente.

La struttura della mia directory che contiene il mio script è .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 

e ho provato quanto segue, ma non funziona per me:

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

Grazie in anticipo per qualsiasi Aiuto.

Edit: Mi sto avvicinando, così ora ho:

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

Ora sarà compilare ed installare tutti i file, ma senza escludere le directory che voglio. Qualche consiglio su come posso escluderli?

risposta

5

Calcolato con l'aiuto di un collega. Basta dare i nomi delle directory senza * s:

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