Me gustaría configurar una forma automatizada para archivar archivos en OS X Lion. Al archivar me refiero a usar la función de compresión HFS + en una carpeta específica, y hacer que cada archivo que muevo a esta carpeta se comprima automáticamente. Estoy pensando en usar esto para archivar archivos grandes que no uso con frecuencia, pero sin tener que crear manualmente archivos comprimidos y tener que extraerlos en caso de que los necesite.
Encontré la herramienta afsctool ( brew install afsctool
), que puede, a través de la línea de comandos, aplicar compresión HFS + a una carpeta y a todos los archivos que contiene . Pero creo que no activa la compresión de futuros archivos movidos a la carpeta.
Mover archivos manualmente y ejecutar una instrucción de línea de comando repetidamente es inconveniente. Por lo tanto, supongo que necesitaría usar el automatizador / AppleScript para ejecutar esto en dos pasos:
- Cree un script que permita mover cualquier archivo a una carpeta específica. Idealmente, una opción llamada Archivo accesible mediante clic derecho en el archivo.
- Ejecute una instrucción de línea de comando
afsctool -c <folder>
para activar la compresión en todos los archivos nuevos que acaba de mover a la carpeta.
No tengo experiencia en el uso de automatizadores o AppleScript, por lo que me gustaría saber por dónde empezar, especialmente con respecto a cómo agregar acciones al Finder y cómo ejecutar una herramienta de línea de comandos desde un script.
Actualizaciones
@kopischke guía funciona bien. El script en sí, lo hice en base a la respuesta de @mark, pero usando afsctool -c <folder>
, en lugar de ditto
. Aquí está el guión: se debe poner en~/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
Dado que afsctool en MobileMe ya no está disponible, hay diimdeep / afsctool en GitHub, actualmente 1.6.4.
También afsctool en MacPorts, donde conocen el problema de MobileMe pero tal vez desconocen la fuente en GitHub.