Gli utenti della linea di comando potrebbero trovare utile modificare e rinominare l’estensione di un gruppo di file in una directory. Ad esempio, supponiamo di avere una serie di file con estensione «.txt», ma si desidera che tutte le estensioni dei file siano «.py». Questo è ciò che stiamo per dimostrare qui, basandoci su semplici script di bash per cambiare un gruppo di estensioni di file sulla riga di comando di Mac OS / OS X, ma funzionerà anche con Linux e altri sistemi Unix.
Prima di iniziare, è importante capire che questo non cambia il tipo di file, ma modifica solo l’estensione del file. Questo approccio utilizza intenzionalmente la riga di comando, quindi si rivolge a utenti più esperti. Tuttavia, il terminale non è l’unico modo per farlo; se questo metodo ti sembra troppo complesso, ricorda che Mac OS offre strumenti semplici per rinominare i file e cambiare le estensioni in batch anche nel Finder, senza dover ricorrere alla riga di comando. Va bene per chi preferisce l’approccio della linea di comando utilizzando uno script bash semplice.
Tra l’altro, dovresti sempre fare una copia e/o un backup dei file che stai modificando, in particolare se sei nuovo nell’uso della riga di comando. Altrimenti, potresti rischiare di perdere dati, errori o errori di battitura, quindi non sottovalutare l’importanza dei backup.
Come modificare tutte le estensioni di file in una directory tramite la riga di comando
Facciamo alcuni esempi. Nel primo esempio, cambieremo tutti i file nella presente directory di lavoro con l’estensione «.txt» e li trasformeremo in «.py». Supponendo che tu sia nella directory corretta, ecco la sintassi da utilizzare:
per file in *.txt; fai mv «$file» «${file%.txt}.py»; fatto
Nota: usa il carattere jolly * che rappresenta qualsiasi file nella directory corrente. Tutti i file che corrispondono all’estensione «*.txt» verranno modificati. Fai attenzione alle diverse istanze di «txt» e «py», che dovrai adattare secondo le tue esigenze.
Tutto ciò che stai facendo è creare un semplice ciclo per trovare i file che corrispondono al carattere jolly e all’estensione del file iniziale, quindi eseguire il comando «mv» per rinominare quei file. Piuttosto semplice, vero?
Vediamo un altro esempio: immaginiamo di avere una collezione di file immagine nella directory corrente, con nomi di file come «blahblah.jpg.jpg», ma vogliamo semplificarli, trasformandoli in «blazblah.jpg». In questo caso, la sintassi sarà simile alla seguente:
per file in *.jpg.jpg; fai mv «$file» «${file%.jpg.jpg}.jpg»; fatto
L’approccio della riga di comando per modificare le estensioni dei file è veloce e ti permette di apportare le modifiche senza finestre di avviso o conferme.
E per ribadire ancora una volta, questo metodo non serve a convertire alcun tipo di file, ma solo a cambiare il nome dell’estensione.
Hai trovato un modo migliore per cambiare diverse estensioni di file in una directory tramite la riga di comando? Se hai qualche consiglio o vuoi condividere altre tecniche, faccelo sapere nei commenti!
Aggiornamenti e nuove funzionalità nel 2024
Nel 2024, Apple ha introdotto miglioramenti al Terminale che rendono l’uso della riga di comando ancora più intuitivo. Ad esempio, adesso è possibile utilizzare shortcut personalizzati per eseguire script Bash, rendendo l’intero processo più snello e veloce. Inoltre, il supporto per il linguaggio Zsh è diventato standard, offrendo funzionalità avanzate come l’autocompletamento intelligente e la personalizzazione della shell.
Inoltre, per chi è interessato a gestire file in modo più visivo, ci sono nuove app di terze parti che offrono interfacce grafiche per il batch renaming, mantenendo la potenza della riga di comando sotto il cofano. Questo significa che puoi ottenere il meglio di entrambi i mondi: la velocità della riga di comando senza sacrificare la comodità di un’interfaccia utente grafica.
Rimanere aggiornati sulle ultime funzionalità di macOS è fondamentale; assicurati di esplorare le novità che ogni aggiornamento porta, poiché potrebbero semplificare ulteriormente il tuo flusso di lavoro e migliorare la tua produttività.