7zip: come escludere i file (non i tipi di file) usando un file dell'elenco di esclusione?


11

So che puoi creare un file di testo contenente un elenco di file e quindi dire a 7zip di fare riferimento a questo file in modo che possa escluderli dall'archivio, ma non riesco a trovare la sintassi per quello. Qualcuno può aiutare?

Risposte:


9

Dopo alcune ore di ricerche, ho finalmente capito. Ecco la sintassi dello switch:

7z a -xr@exclude.txt backup.7z c:\whatever\*

Si noti -xrinvece di -x. Il rindica ricorsiva modo che possa corrispondere file esclusi in gerarchie di cartelle profonde. Inoltre, il formato del file di testo può essere almeno ANSI o UTF-8.

Per quanto riguarda il file contenente i file, come ha detto OldWolf, è un elenco separato da ritorni a capo come questo:

Telerik.Reporting.dll
Telerik.Reporting.Service.dll
Telerik.ReportViewer.WebForms.dll
Telerik.Web.Design.dll
Telerik.Web.UI.dll
*.txt

Funziona come un fascino.


1
Grazie! Stavo cercando di escludere con l'opzione jolly e si scopre che mi mancava l' ropzione. Questo è il modo corretto di escludere i file PNG in modo ricorsivo in bash (virgolette singole per fermare l'espansione di bash !e *): -xr'!*.png' (modifica: virgolette singole invece di escape)
thomasa88

4

Penso che tu voglia l'opzione -x con @

7z a -t7z my.zip * -x@myexclusion.lst

Con il senno di poi, ho capito che potresti aver significato che volevi la sintassi per il file di elenco. Dovrebbe essere un elenco separato da una nuova riga. Potresti riscontrare un problema di codifica. 7z si aspetta che sia in formato UTF-8, puoi sovrascriverlo con l'opzione -scs o puoi dire al blocco note di salvare il file in formato UTF-8


2
Grazie per il promemoria sulla codifica dei file. Sono stato per ore confuso sul motivo per cui il mio elenco di esclusioni non veniva rispettato. Produco il file in uno script di PowerShell usando Out-File che per impostazione predefinita è Unicode. Cambiandolo in output UTF8 e all'improvviso tutto funziona.
WileCau,

0

Se il tuo elenco sarà davvero breve, puoi avere più di un flag -x:

7z a -r CppSourceJBR.zip * .cpp .h -x! Stdafx. -x! targetver.h

A proposito, durante il test ho dovuto continuare a cancellare il file .zip. Quando l'ho dimenticato, ad esempio targetver.h era ancora nel ZIP dall'ultima esecuzione.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.