Ho scaricato una quantità elevata di video e fotografie da vecchi supporti ottici, tutti scatti di amici e famiglia che non ho mai organizzato in Libreria Foto di Apple o caricato su Flickr (dal quale toccherà levare le tende quanto prima, ma questo è un altro argomento di cui discutere), con l’intenzione di metterli a posto e tenerli sotto un backup un pelo più affidabile.
Mi sono ritrovato con cartelle difficilmente esplorabili e utilizzabili da Finder (su macOS), ho quindi cercato di saltare l’ostacolo riorganizzando quei file in gruppi di 300 immagini o 50 video per ciascuna cartella, appoggiandomi a degli script di bash che ho avviato sul NAS, dove ho inizialmente spostato il materiale.
picsMover.sh
e vidsMover.sh
si occupano rispettivamente di rinominare i file JPEG
/JPG
/jpeg
in jpg
(case sensitive) e MP4
in mp4
(medesima sorte), quindi spostarli in cartelle che verranno create automaticamente, 300 immagini o 50 video per ciascuna di queste (chiamate PICS_X
e VID_X
, dove X è il numero progressivo della cartella).
Ho caricato entrambi gli script su Gist, così che tu possa recuperarli facilmente e riutilizzarli come meglio credi.
picsMover.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Blocco rename da JPG/JPEG/jpeg a jpg | |
# Credits: https://www.tldp.org/LDP/GNU-Linux-Tools-Summary/html/x4055.htm | |
for i in *.JPG; | |
do mv $i ${i%%.JPG}.jpg; | |
done | |
for i in *.JPEG; | |
do mv $i ${i%%.JPEG}.jpg; | |
done | |
for i in *.jpeg; | |
do mv $i ${i%%.jpeg}.jpg; | |
done | |
# Riorganizzo le immagini in cartelle in blocchi da 300 ($c -eq 300) | |
# Credits: https://unix.stackexchange.com/posts/180105/revisions | |
c=1; d=1; mkdir -p PICS_${d} | |
for jpg_file in *.jpg | |
do | |
if [ $c -eq 300 ] | |
then | |
d=$(( d + 1 )); c=0; mkdir -p PICS_${d} | |
fi | |
mv "$jpg_file" PICS_${d}/ | |
c=$(( c + 1 )) | |
done |
vidsMover.sh
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# Blocco rename da MP4 a mp4 | |
for i in *.MP4; | |
do mv $i ${i%%.MP4}.mp4; | |
done | |
# Riorganizzo i video in cartelle in blocchi da 50 ($c -eq 50) | |
c=1; d=1; mkdir -p VID_${d} | |
for vid_file in *.mp4 | |
do | |
if [ $c -eq 50 ] | |
then | |
d=$(( d + 1 )); c=0; mkdir -p VID_${d} | |
fi | |
mv "$vid_file" VID_${d}/ | |
c=$(( c + 1 )) | |
done |
Provati tutti e due sul mio Synology DS216j, il quale ha portato a termine il suo mestiere. Per entrambi i codici valgono crediti e ringraziamenti a chi mi ha inconsapevolmente messo sulla via giusta per ottenere il risultato sperato:
Buon lavoro! :-)
L'articolo potrebbe non essere aggiornato
Questo post è stato scritto più di 5 mesi fa, potrebbe non essere aggiornato. Per qualsiasi dubbio ti invito a lasciare un commento per chiedere ulteriori informazioni! :-)
Pillole
Le pillole sono articoli di veloce lettura dedicati a notizie, script o qualsiasi altra cosa possa essere "divorata e messa in pratica" con poco. Uno spazio del blog riservato agli articoli "a bruciapelo"!
Se vuoi leggere le altre pillole fai clic qui.