Vorrei impostare un modo automatizzato per l'archiviazione dei file in OS X Lion. Con l'archiviazione intendo usare la funzione di compressione HFS + su una cartella specifica e rendere automaticamente compressi tutti i file che sposto in questa cartella. Sto pensando di usarlo per archiviare file di grandi dimensioni che non uso spesso, ma senza dover creare manualmente archivi compressi e doverli estrarre nel caso ne avessi bisogno.
Mi sono imbattuto nello strumento afsctool ( brew install afsctool
), che può, tramite riga di comando, applicare la compressione HFS + a una cartella ea tutti i file in essa contenuti. Ma credo che non attivi la compressione dei file futuri spostati nella cartella.
Spostare i file manualmente ed eseguire ripetutamente un'istruzione della riga di comando è scomodo. Quindi suppongo che avrei bisogno di usare automator / AppleScript per eseguire questo in due passaggi:
- Crea uno script che consenta di spostare qualsiasi file in una cartella specifica. Idealmente un'opzione denominata Archive accessibile tramite il tasto destro del mouse sul file.
- Esegui un'istruzione da riga di comando
afsctool -c <folder>
per attivare la compressione su tutti i nuovi file appena spostati nella cartella.
Non ho esperienza con automator o AppleScript, quindi vorrei sapere da dove iniziare, soprattutto per quanto riguarda come aggiungere azioni al Finder e come eseguire uno strumento da riga di comando da uno script.
aggiornamenti
La guida di @kopischke funziona bene. Lo script stesso, ho realizzato basandomi sulla risposta di @mark, ma usando afsctool -c <folder>
invece di ditto
. Ecco lo script: dovrebbe essere inserito~/Library/Scripts/Folder Action Scripts
on adding folder items to this_folder after receiving these_items
repeat with i from 1 to number of items in these_items
try
set this_item to item i of these_items
tell application "Finder"
set the file_name to the POSIX path of this_item
end tell
set cmd to "/usr/local/bin/afsctool -c " & file_name
do shell script cmd
on error the error_message number the error_number
display dialog "Error: " & the error_number & ". " & the error_message buttons {"OK"} default button 1
end try
end repeat
end adding folder items to
Poiché afsctool su MobileMe non è più disponibile, c'è diimdeep / afsctool su GitHub, attualmente 1.6.4.
Anche afsctool in MacPorts dove sono a conoscenza del problema MobileMe ma forse ignari della fonte su GitHub.