Comprimi tutti i file in una directory dalla riga di comando

Sommario:

Anonim

Questo è davvero un ottimo comando da terminale che comprime ogni file all'interno di una directory, trasformandolo in un archivio zip. Ne offriremo due varianti; uno che rimuove il file sorgente originale e lascia solo i file compressi e un altro comando che lascia intatti i file sorgente non compressi. Questo è stato testato e funziona su Mac OS X e Linux.

Comprimi tutti i file in una directory e rimuovi i file di origine

Questa versione comprime tutti gli elementi nella directory corrente e quindi rimuove il file originale non compresso:

"

per elemento in ; do zip -m ${item}.zip>"

Ricorda cheindica tutti i file nella directory corrente, quindi assicurati di essere nella directory che desideri comprimere prima di eseguire il comando. Puoi sempre ricontrollare in quale directory stai lavorando anche con il comando 'pwd'.

L'ho provato e dopo averlo letto su StevenF e in media ha compresso i file del 66%, che è una riduzione significativa. Se si dispone di una cartella di download o di altri archivi a cui si accede raramente, questo comando può davvero risparmiare spazio su disco. Ovviamente poiché comprime i file, non avrebbe senso utilizzarlo in una directory in cui si accede regolarmente alle cose.

Comprimi tutti i file in una directory, mantieni i file originali

Puoi anche usare il comando precedente per comprimere tutti i file all'interno di una directory, mantenendo comunque i file o le cartelle originali come non compressi. Il comando è praticamente identico, basta tralasciare il flag -m:

"

per elemento in ; do zip ${item}.zip ${item}; fatto"

Ora avrai compresso tutti i file nella directory di lavoro attuale (pwd) e anche i file sorgente originali rimarranno al loro posto non compressi.

Questi comandi funzionano in Mac OS X e Linux, e probabilmente anche in altre varianti di Unix.

Dai un'occhiata ad altri suggerimenti sulla riga di comando se sei interessato.

Comprimi tutti i file in una directory dalla riga di comando