it-swarm-eu.dev

7Zip - Riga di comando: Escludi cartella/e per modello jolly?

Qualche idea su come escludere un (i) percorso (i) jolly da un comando 7Zip della riga di comando?

Sto facendo qualcosa di questo:

7z.exe a -t7z archive.7z FolderToArchive\ -mx0

e vorrebbe escludere qualsiasi cartella \bin\*.* o \obj\*.* trovata sotto "FolderToArchive". Per escludere i file è possibile utilizzare il parametro -x. Il file di aiuto fornisce questo esempio per l'utilizzo di -x:

7z a -tzip archive.Zip *.txt -x!temp.*

È fantastico per l'esclusione di un file. Ma, ancora una volta, vorrei escludere una cartella specificata con caratteri jolly. Sotto il mio "FolderToArchive" ci sono più cartelle, sotto quelle cartelle possono esserci o meno le cartelle bin\ e obj\. Mi piacerebbe non includerli nell'archivio.

Ho provato modelli come:

-x!bin\*-x!bin\*.*-x!\bin\*-x!\bin\*.*-x!\\bin\\*-x!\\bin\\*.*

Nessuno sembra escludere. Si tratta semplicemente di una limitazione di 7zip?

104
Yoopergeek

Per escludere ricorsivamente le cartelle bin e obj puoi usare il comando:

7z.exe a -t7z archive.7z FolderToArchive\ -mx0 -xr!bin -xr!obj
121
heavyd

Per evitare bug, usa -r o -xr attentamente.

supponiamo di avere directory come:

.\path1\path2\bin
.\path1\path2\src
.\path3\path4\path5\bin
.\path3\path4\path5\src

ed esegui il comando:

7z a -t7z archive.7z .\path1\path2 .\path3\path4\path5 -xr!bin

cosa hai in archive.7z:

.\path2\src
.\path5\src

Cioè, .\path2\ e .\path5\ divennero la cartella top in archive.7z, ed entrambe le directory bin furono escluse.

-x supporta solo percorso/nomefile relativo alla cartella superiore nell'archivio.

Quindi, se vuoi solo escludere .\path1\path2\bin, ma includere tutte le altre directory 'bin', il comando dovrebbe essere come questo:

7z a -t7z archive.7z .\path1\path2 .\path3\path4\path5 -x!path2\bin

Ho provato ad usare il percorso assoluto in -x, ma non ci riesco.


Aggiornamento:

C'è un'opzione -spf in 7z per Linux che funziona con path assoluto.

Secondo Marco , -spf è anche disponibile su Windows da 7-Zip 15.14

13
zhazha