Tôi muốn thiết lập một cách tự động để lưu trữ các tệp trong OS X Lion. Bằng cách lưu trữ, tôi có nghĩa là sử dụng tính năng nén HFS + trên một thư mục cụ thể và làm cho mọi tệp mà tôi di chuyển vào thư mục này được tự động nén. Tôi đang nghĩ đến việc sử dụng điều này để lưu trữ các tệp lớn mà tôi không sử dụng thường xuyên, nhưng không phải tạo thủ công các tài liệu lưu trữ nén và phải giải nén chúng trong trường hợp tôi cần chúng.
Tôi đã xem qua công cụ afsctool ( brew install afsctool
), có thể, thông qua dòng lệnh, áp dụng nén HFS + cho một thư mục và tất cả các tệp trong đó. Nhưng tôi tin rằng nó không kích hoạt nén các tệp trong tương lai được chuyển đến thư mục.
Di chuyển tệp theo cách thủ công và chạy một lệnh dòng lệnh nhiều lần là bất tiện. Do đó, tôi đoán rằng tôi sẽ cần sử dụng trình tự động hóa / AppleScript để thực hiện việc này theo hai bước:
- Tạo một tập lệnh cho phép di chuyển bất kỳ tập tin vào một thư mục cụ thể. Lý tưởng nhất là một tùy chọn có tên Lưu trữ có thể truy cập thông qua nhấp chuột phải vào tệp.
- Chạy một lệnh dòng lệnh
afsctool -c <folder>
, để kích hoạt nén trên tất cả các tệp mới vừa di chuyển đến thư mục.
Tôi không có kinh nghiệm sử dụng trình tự động hóa hoặc AppleScript, vì vậy tôi muốn biết bắt đầu từ đâu, đặc biệt là về cách thêm hành động vào Finder và cách chạy công cụ dòng lệnh từ tập lệnh.
Cập nhật
Hướng dẫn @kopischke hoạt động tốt. Bản thân kịch bản, tôi đã thực hiện dựa trên câu trả lời của @mark, nhưng sử dụng afsctool -c <folder>
, thay vì ditto
. Đây là kịch bản: Nó nên được đưa vào~/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
Vì afsctool tại MobileMe không còn khả dụng, nên có diimdeep / afsctool tại GitHub, hiện là 1.6.4.
Ngoài ra afsctool trong MacPorts nơi họ biết về sự cố MobileMe nhưng có thể không biết về nguồn tại GitHub.