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 hago que todos los archivos que muevo en esta carpeta se compriman 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 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 la compresión HFS + a un carpeta y todos los archivos en ella. 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 comandos repetidamente es un inconveniente. Por lo tanto, supongo que necesitaría usar automator / AppleScript para ejecutar esto en dos pasos:
- Cree un script que permita mover cualquier archivo a una carpeta específica. Lo ideal sería una opción llamada Archivo accesible haciendo clic con el botón derecho en el archivo.
- Ejecuta una instrucción de línea de comando
afsctool -c <folder>
, para activar la compresión en todos los archivos nuevos que se acaban de mover a la carpeta.
No tengo experiencia en el uso de automator o AppleScript, por lo que me gustaría saber dónde comenzar, especialmente sobre cómo agregar acciones al Finder y cómo ejecutar una herramienta de línea de comandos desde un script.
Actualizaciones
La guía @kopischke 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
Ya que afsctool en MobileMe ya no está disponible, hay diimdeep / afsctool en GitHub, actualmente 1.6.4.
También afsctool en MacPorts , donde están al tanto del problema de MobileMe pero quizás Desconocía la fuente en GitHub.