OS X at
コマンドを使用して、ユーザーの.Trash
フォルダの毎日のクリーンアップをスケジュールしますか?
私は以下の行に沿って何かを考えています。
rm -rf ~/.Trash/**/* | at 0:00 + 1 day
これは毎日ゴミをきれいにしますか?
このコマンドをログインスクリプトの一部として実行しているので、スケジュールされたすべてのタスクをクリアする方法も必要です。 at -r all
への道はありますか?
rm -rf ~/Trash/*
rootとして実行しない限り、許可が拒否されたことがあります。 osascript -e 'tell app "Finder" to empty trash'
一部のファイルが使用されている場合はエラーダイアログも表示されます。
Rootのcrontab(0 0 * * * rm -rf ~/Trash/*
)にSudo crontab -e
を追加してみてください。
またはLaunchDを使用して、このようなプロパティリストを/Library/LaunchAgents/empty_trash.plist
(そしてrootを所有する)として保存します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.Apple.com/DTDs/PropertyList-1.0.dtd>
<plist version="1.0">
<dict>
<key>EnableGlobbing</key>
<true/>
<key>Label</key>
<string>empty_trash</string>
<key>ProgramArguments</key>
<array>
<string>rm</string>
<string>-rf</string>
<string>/Users/username/Trash/*</string> <!-- ~/ doesn't work -->
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>0</integer>
<key>Minute</key>
<integer>0</integer>
</dict>
</dict>
</plist>
次回のログイン時に自動的にロードされていますが、Sudo launchctl load /Library/LaunchAgents/empty_trash.plist
ですぐにロードできます。
Hazel トラッシュを自動的に空にするためのオプションもあります。