Ordinare i file con estensioni maiuscole, minuscole… o assenti. Script Editor – Lezione 10

Una guida pratica all’automazione su macOS con AppleScript e Script Editor.
Con la Lezione 10 portiamo a compimento il lavoro di organizzazione automatica dei file: oggi lo script sarà in grado di gestire estensioni con maiuscole e minuscole, trattandole come equivalenti (es. .JPG e .jpg), e includerà anche i file senza estensione, che finora venivano ignorati.


Script Editor – Lezione 10
Ordinare i file con estensioni maiuscole, minuscole… o assenti

Script Editor – Lezione 10
Ordinare i file con estensioni maiuscole, minuscole… o assenti

Abbiamo imparato a creare una sottocartella per ogni tipo di file, in base all’estensione. Ma AppleScript — a differenza del Finder — distingue tra “JPG” e “jpg”: per lui sono due cose diverse.

E poi ci sono i file senza estensione, che finora venivano ignorati. È il momento di sistemare tutto questo.

Apri Script Editor e incolla questo script migliorato:

set cartellaScelta to choose folder with prompt "Scegli la cartella da riordinare:"

tell application "Finder"
	set tuttiFile to files of folder cartellaScelta
	set contaSpostati to 0
	
	repeat with unFile in tuttiFile
		set estensione to name extension of unFile
		
		if estensione is not "" then
			set estensione to (do shell script "echo " & quoted form of estensione & " | tr '[:upper:]' '[:lower:]'")
			set nomeCartella to estensione
		else
			set nomeCartella to "senza estensione"
		end if
		
		if not (exists folder nomeCartella of cartellaScelta) then
			make new folder at cartellaScelta with properties {name:nomeCartella}
		end if
		
		move unFile to folder nomeCartella of cartellaScelta
		set contaSpostati to contaSpostati + 1
	end repeat
end tell

display dialog "Ordinati " & contaSpostati & " file in base all’estensione." buttons {"OK"} default button "OK"

Cosa cambia rispetto alla lezione precedente

  • Le estensioni vengono convertite in minuscolo tramite il comando tr via do shell script
  • I file senza estensione vengono spostati in una sottocartella chiamata “senza estensione”

Esempio pratico

Hai una cartella con:

  • FOTO1.JPG
  • foto2.jpg
  • progetto.PAGES
  • readme (senza estensione)

Risultato:

  • cartella jpg → contiene FOTO1.JPG e foto2.jpg
  • cartella pages → contiene progetto.PAGES
  • cartella senza estensione → contiene readme

Cosa hai imparato

  • normalizzare i dati in ingresso (tutte le estensioni in minuscolo)
  • gestire i casi speciali, come i file senza estensione
  • A usare do shell script per estendere le capacità di AppleScript
  • A costruire script più robusti, che funzionano bene anche su contenuti reali

Questo script può già essere usato in modo concreto per riordinare cartelle disordinate con decine o centinaia di file misti.

È una piccola utility da tenere sempre pronta.


Avatar photo

Mac Peer

×