GNU/Linux >> Linux Esercitazione >  >> Linux

7 Suggerimenti per la riga di comando di Linux per risparmiare spazio sui file multimediali

Hai file multimediali sul tuo computer? È probabile che tu possa recuperare spazio su disco significativo archiviando i dati in formati di file più efficienti in termini di spazio.

Questo articolo illustra come utilizzare i comandi di linea Linux per eseguire le conversioni salvaspazio più comuni. Uso i comandi di linea perché ti danno il controllo completo sulle funzionalità di compressione e conversione del formato. Inoltre, dovrai usare i comandi di riga se vuoi scrivere script. Ciò ti consente di sviluppare programmi personalizzati in base alle tue esigenze specifiche.

Mentre questo articolo copre i comandi del terminale, ci sono molti altri modi per comprimere e convertire i file. Puoi installare un'applicazione GUI di conversione open source sul tuo computer, oppure puoi persino convertire i formati di file usando il save as e export funzioni di molte applicazioni comuni.

Questo articolo discute solo una manciata dei formati di file e dei comandi del terminale più popolari tra le centinaia esistenti. L'obiettivo è darti il ​​massimo beneficio mantenendo le cose semplici.

Eliminazione file

Prima di iniziare le conversioni del formato file, è utile identificare e quindi eliminare i file enormi ma indesiderati presenti sul computer. Eliminare solo una manciata di maiali spaziali produce enormi vantaggi.

Il du , ncdu e dust i comandi elencano le sottodirectory più grandi nella directory corrente. Ti dicono quali directory utilizzano più spazio su disco:

$ du -a .  |  sort -n -r  |  head -n 50

Questa stringa di comando identifica i 50 file più grandi nel suo albero di directory ricorsivo. Elenca i file più grandi ordinati per dimensione:

$ find  -type f  -exec  du -Sh {} +  |  sort -rh  |  head -n 50

Con questo comando, puoi riconoscere immediatamente quando hai file di grandi dimensioni archiviati in più di una posizione. Elimina i duplicati e puoi recuperare spazio significativo. L'output ti aiuta anche a identificare e quindi eliminare i file di grandi dimensioni che non ti servono più.

Più risorse Linux

  • Comandi Linux cheat sheet
  • Cheat sheet sui comandi avanzati di Linux
  • Corso online gratuito:Panoramica tecnica RHEL
  • Cheat sheet della rete Linux
  • Cheat sheet di SELinux
  • Cheat sheet dei comandi comuni di Linux
  • Cosa sono i container Linux?
  • I nostri ultimi articoli su Linux

Qualità o spazio di archiviazione

I file multimediali che contengono immagini, audio e video possono utilizzare centinaia di formati di file diversi. C'è spesso un compromesso tra la qualità dei dati da un lato e lo spazio di archiviazione consumato dall'altro.

Alcuni formati di file sono senza perdita :conservano tutti i dati originariamente acquisiti. I formati di file senza perdita di dati possono essere non compressi o compresso . Le dimensioni variano in base a questo e ad altri fattori.

Altri formati di file sono con perdita . Risparmiano spazio di archiviazione eliminando abilmente alcuni dei dati meno utili. Sono ideali se l'utilizzo dei dati è tale da poter tollerare una lieve perdita di dati.

Ad esempio, l'acquisizione di un'immagine digitale in un formato senza perdita di dati come RAW, PNG o BMP crea un file di grandi dimensioni. La conversione di quell'immagine in un'alternativa con perdita di dati come JPG o WEBP consente di risparmiare molto spazio. Ne vale la pena? Dipende dall'uso previsto dell'immagine.

Se sei un fotografo professionista che stampa una fotografia in un libro di alta qualità, probabilmente vorrai conservare il tuo file originale senza perdita di dati. Probabilmente hai bisogno dell'immagine della massima qualità per la tua opera d'arte. Il tuo file lossless significa anche che puoi eseguire un'ampia modifica delle immagini senza perdere la qualità.

Se sei uno sviluppatore di siti web, potresti fare la scelta opposta. I file JPG o WEBP con perdita di piccole dimensioni vengono scaricati sui computer degli utenti molto più velocemente delle immagini senza perdita, rendendo le tue pagine Web caricate più rapidamente. Questa conversione funziona perché pochi utenti possono dire se l'immagine che visualizzano sul proprio computer o sullo schermo del cellulare è lossless o lossless.

Tieni presente che dopo aver convertito da un formato senza perdita di dati a uno con perdita di dati, hai rimosso alcuni dati. Non puoi riconvertire per recuperare quei dati. Puoi riconvertire il formato precedente, ma lo fai senza i dati che hai già sacrificato. Elimina il file originale solo quando sei soddisfatto che il file convertito soddisfi tutte le tue esigenze! Puoi scegliere di non eliminare affatto il file originale.

A volte, risparmiare spazio significa risparmiare comodo spazio. Se per qualsiasi motivo sono importanti per te file originali, senza perdita di dati e non compressi, eseguine il backup in una posizione di archiviazione separata. Potresti non aver bisogno di quel file WAV di alta qualità sul tuo computer di lavoro ogni giorno, ma potresti essere felice di avervi accesso in un secondo momento.

Conversione di file immagine

Diversi popolari formati di file bitmap offrono grandi opportunità per risparmiare spazio, inclusi RAW, BMP, GIF e TIFF. Anche il formato PNG ampiamente utilizzato è un buon candidato.

Un possibile obiettivo di conversione per le immagini è il formato JPG con perdita. Con le sue impostazioni di qualità, JPG ti consente di specificare una dimensione del file più piccola con una maggiore perdita di dati o una dimensione del file più grande con una perdita minore. Potrebbe darti un rapporto di compressione fino a 10:1 su alcuni formati senza perdita di dati. Tuttavia, se visualizzi un'immagine JPG sullo schermo di un computer o di un telefono, l'occhio può raramente dire che si sono verificate conversione e compressione.

Un file WEBP ha lo stesso aspetto sugli schermi dei file JPG, ma consente di risparmiare ancora più spazio. Questo risparmio è il motivo per cui WEBP sta diventando il formato di immagine con perdita di dati più popolare, supportato da tutti i browser moderni e dalle app più aggiornate. Il formato WEBP offre trasparenza alfa, animazione e buona luminosità del colore. Viene quasi sempre utilizzato come formato con perdita di dati, sebbene supporti anche la modalità senza perdita di dati.

Ho convertito la maggior parte dei miei file PNG e JPG in formato WEBP e recuperato un sacco di spazio di archiviazione. Su un disco, 500 megabyte di file PNG si sono ridotti a circa 120 mega di WEBP. Se sei certo che le tue immagini verranno visualizzate sempre e solo su uno schermo, la conversione in WEBP offre evidenti vantaggi.

L'utilità open source ImageMagick ti fornisce i comandi del terminale Linux per convertire le immagini. Probabilmente devi prima installarlo:

$  sudo apt install imagemagick

I comandi di linea di ImageMagick ti aiutano a ridurre le dimensioni dei file di immagine attraverso tre tecniche:

  • Cambiare il formato del file
  • Cambiare il grado di compressione
  • Ridurre l'immagine

Ecco la sintassi di ImageMagick convert comando che esegue conversioni di formato file:

convert  [input options]  input_file   [output options]  output_file

Tutti questi esempi hanno ridotto le dimensioni del file, come puoi vedere dai risultati delle esecuzioni di esempio:

$ convert image.bmp  new_image.jpg   #  7.4MB down to 1.1MB
$ convert image.tiff new_image.jpg   #  7.4MB down to 1.1MB
$ convert image.png  new_image.webp  #  4.8MB down to 515KB
$ convert image.png  new_mage.webp   #  1.5MB down to 560KB
$ convert image.jpg  new_image.webp  #  769KB down to 512KB
$ convert image.gif  new_image.jpg   #  13.2MB down to 10.9MB
$ convert image.gif  new_image.webp  #  13.2MB down to 4.1MB

Puoi anche convertire immagini RAW. Quando si converte un'immagine RAW, il suo nome file non deve avere un'estensione per il convert comando per elaborarlo correttamente.

$ convert image new_image.png #  RAW 67.1MB down to 45.3MB

È possibile ottenere un notevole risparmio di spazio, ma solo se l'output è accettabile per il tuo caso d'uso.

Questo esempio consente di risparmiare spazio ridimensionando un'immagine JPG il più vicino possibile a 800x600 pur mantenendo le proporzioni corrette. In questo esempio, converto un file di input da 285 KB a 1277x824 pixel in un file di output da 51 KB a 800x600 pixel.

$ convert image.jpg  -resize 800x600  new_image.jpg

Il convert comando può cambiare le immagini come preferisci. Ad esempio, puoi specificare il compromesso tra qualità e dimensione dell'immagine. Ma dovrai esaminare le sue numerose opzioni per comprenderne tutte le capacità. Per ulteriori informazioni su ImageMagick, leggi la Guida introduttiva di ImageMagick di Greg Pittman o visita il sito Web di ImageMagick.

Conversione di file audio

Come i file di immagine, i file audio sono disponibili in lossless non compressi , compresso senza perdita di dati e perdita formati.

Come per le immagini, il compromesso tra lossless e lossy è principalmente la qualità dei dati rispetto al risparmio di spazio. Se hai bisogno della massima qualità audio, mantieni i file senza perdita di dati. Potrebbe essere il caso, ad esempio, se modifichi la musica digitalizzata. Se desideri musica ascoltabile che consumi molto meno spazio, la maggior parte del mondo ha deciso che i formati con perdita di dati come MP3, M4A e OPUS sono la scelta migliore.

Ecco i formati audio più popolari. Tieni presente che le estensioni di file spesso si riferiscono a contenitori che possono supportare più di un formato di codifica audio e che la maggior parte delle tecnologie richiede più di una singola estensione di file. Questo grafico elenca gli scenari più comuni che vedrai:

  • Senza perdita e non compresso
    • WAV
    • PCM
    • AIFF
  • Senza perdita e compresso
    • FLAC
    • ALAC
  • Perdita
    • WebM
    • OPUS
    • OGG (Vorbis)
    • AAC (alcune implementazioni di questo non sono formati aperti)
    • MP3
    • M4A
    • WMA (non un formato aperto)

Se il tuo obiettivo è risparmiare spazio su disco, prova a convertire da un formato senza perdita di dati a uno con perdita di dati. Non convertire da un formato con perdita di dati a un altro a meno che non sia necessario. Ciò probabilmente degraderà troppo la qualità del suono.

Un comando terminale Linux molto flessibile per convertire i file audio è ffmpeg . Per installarlo:

$ sudo apt install ffmpeg

Come ImageMagick convert comando, ffmpeg supporta un'incredibile gamma di formati di file e codec. Visualizzali tutti inserendo:

$ ffmpeg -encoders

Usando ffmpeg di solito è piuttosto semplice. Ecco la sintassi standard. Il -i flag identifica il file di input e il -vn flag dice a ffmpeg non invocare alcun codice relativo al video che potrebbe alterare l'output audio:

$ ffmpeg  -i  audiofile_input.ext -vn audiofile_output.new

Questi esempi convertono tutti i file WAV senza perdita di dati in formati con perdita di dati per risparmiare spazio. Il processo per convertire i file AIFF è lo stesso (ma sostituisci .wav con .aiff ):

$ ffmpeg -i audio.wav -vn audio.ogg  # 38.3MB to 3.3MB
$ ffmpeg -i audio.wav -vn audio.mp3  # 38.3MB to 3.5MB
$ ffmpeg -i audio.wav -vn audio.m4a  # 38.3MB to 3.6MB
$ ffmpeg -i audio.wav -vn audio.webm # 38.3MB to 2.9MB

Tutti i comandi hanno ridotto la dimensione dei file di input senza perdita di un fattore 10. La grande domanda:gli output suonano in modo diverso dagli originali? Beh, dipende. Per la maggior parte delle persone che ascoltano sulla maggior parte dei dispositivi consumer, la differenza è trascurabile. Ecco perché MP3, M4A e altri formati compressi sono i formati musicali più popolari al mondo. Anche se tecnicamente non è il massimo, l'audio è abbastanza ascoltabile e consuma una frazione dello spazio di archiviazione (o della larghezza di banda, durante lo streaming).

Conversione di file video

La conversione video offre un'altra possibilità per risparmiare molto spazio. Il tuo obiettivo dovrebbe essere trovare il formato video che bilancia al meglio la qualità di riproduzione e le dimensioni del file per soddisfare le tue esigenze.

Un formato video è la combinazione di un formato di file contenitore e un codec . Un codec è un software che codifica e decodifica un flusso di dati mentre si sposta da e verso il file contenitore.

I contenitori possono essere associati a più codec. In pratica, ci sono spesso solo uno o due o tre codec popolari abbinati a un particolare contenitore. Ad esempio, con i file audio, i file WAV possono essere codificati come lossless o lossless, ma la codifica lossless predomina nel formato in modo tale che la maggior parte delle persone presume che qualsiasi file WAV sia senza perdita di dati.

Questi sono alcuni dei formati video open source più utilizzati oggi:

  • Il formato MP4, contenente video H.264 e audio AAC, viene utilizzato in BluRay e streaming Internet.
  • Il formato WEBM, contenente video VP9 e audio Opus, è straordinariamente flessibile e viene utilizzato sia per file di qualità d'archivio che per file più piccoli per lo streaming.
  • Il formato contenitore Matroska (MKV) può contenere quasi tutte le combinazioni di video, audio e persino immagini stereoscopiche (3D). È la base per WEBM.

I principali fattori che determinano la dimensione e la qualità del file video sono:

  • Risoluzione (dimensione della cornice)
  • Bit rate
  • Codifica

Il ffmpeg comando può modificare tutti e tre i parametri. Ecco un semplice esempio di conversione:

$ ffmpeg -i input_video.mov output.webm

Questa conversione ha prodotto un file di output da 1,8 MB da un input da 39 MB.

Poiché non ho specificato alcun parametro, ffmpeg copia la maggior parte degli attributi esistenti del file di input. In questo esempio, il mio file di input era un file MOV contenente video MJPEG con una risoluzione di 1280x720, un frame rate di 23,98 e un bitrate di 40.219 kilobyte al secondo (kbps). Il file di output risultante contiene video VP9 con la stessa risoluzione e frame rate. Tuttavia, il bitrate è di soli 1.893 kbps.

Come per le conversioni audio, i rapporti di compressione video sono impressionanti e il potenziale risparmio di spazio è enorme. Sul mio PC, queste conversioni sono state visualizzate in modo così simile all'originale che era difficile dire se ci fosse un degrado, il che, per i miei scopi, equivale a dire che non c'era alcun degrado.

Il fatto che la qualità dell'output sia accettabile per te dipende dall'uso previsto del video, dai tuoi dispositivi di visualizzazione e dalle tue aspettative. Non cancellare mai il tuo file originale finché non hai esaminato il file convertito e l'hai trovato soddisfacente.

Archiviazione

L'archiviazione richiede più file di input, spesso di diversi tipi di file, e li raccoglie in un unico file di output. La compressione è facoltativa. Un archivio compresso è utile per inviare file su Internet e per l'archiviazione di dati a lungo termine. È un ottimo modo per risparmiare spazio. Lo svantaggio è che sei limitato nel modo in cui puoi elaborare i file archiviati fino a quando non li estrai dall'archivio (sebbene alcuni strumenti ora siano piuttosto sofisticati nella manipolazione dei file all'interno degli archivi).

Tra i molti formati di file di archivio, i formati compressi più popolari includono GZ, BZ2, XZ, ZIP e 7Z. Il tar il comando gestisce molti formati di archivio. Supporta i comandi di compressione inclusi gzip , bzip2 , xz e altri.

$ tar --xz --create --file myarchive.tar.xz bigfile.xcf bigfile.tiff

Questo comando ha ridotto 56 MB fino a un archivio compresso di 28 MB. La quantità di compressione che si verifica varia ampiamente in base ai file coinvolti. Alcuni file multimediali (soprattutto quelli già in formato compresso) si comprimono poco o per niente.

Per annullare l'archiviazione di un file TAR, utilizzare --extract opzione:

$ tar --extract --file myarchive.tar.xz

Il tar Il comando raggruppa molti file in un contenitore (a volte chiamato tarball ). Se stai comprimendo un solo file, tuttavia, non è necessario un contenitore.

Invece, puoi semplicemente comprimere il file con comandi come gzip , bzip2 , xz , zip , 7z e altri.

$ xz bigfile.xcf
$ ls
bigfile.xcf.xz

Per decomprimere un file compresso, di solito puoi utilizzare una versione "un" del comando che hai utilizzato per comprimere il file:

$ unxz bigfile.xcf.xz

A volte c'è anche un --decompress opzione:

$ xz --decompress bigfile.xcf.xz

Non tutte le distribuzioni Linux includono tutti questi comandi, quindi potrebbe essere necessario installarne alcuni.

Suggerimenti per lo script

Per convertire tutti i file in una directory, incorpora semplicemente il tuo comando di conversione all'interno di un for ciclo continuo. Metti le virgolette intorno alla variabile del nome del file per gestire tutti i nomi di file che contengono spazi incorporati. Questo script converte tutti i file PNG in una directory in file WEBP:

#!/bin/bash
for file_name in *.png ; do  
  convert "$file_name"  "$file_name".webp
done

Per elaborare tutti i file in una directory e tutte le sue sottodirectory, è necessario attraversare in modo ricorsivo la struttura delle directory. Usa il pushd e popd stack comandi o il comando trova per questo.

Conclusione

Usati con prudenza, i comandi Linux che comprimono e riformattano i file multimediali possono farti risparmiare gigabyte di spazio di archiviazione. Sono sicuro che hai alcuni ottimi suggerimenti, quindi aggiungili nei commenti.


Linux
  1. Clapper – Un nuovo Gnome Media Player per Linux

  2. KRename – Un potente rinominatore di file batch per Linux

  3. Trasferimento file Android per Linux:invia file a Linux senza limiti di dimensioni

  4. Linux:rimuovi le estensioni di file per più file

  5. Hai bisogno di un buon editor esadecimale per Linux

Suggerimenti per elencare i file con ls nella riga di comando di Linux

Comando Cp in Linux (copia file)

Comando ls in Linux per elencare i file

Come rinominare uno o più file in Linux

Suggerimenti Vim:modifica file remoti con Vim su Linux

Come comprimere un file in Linux