Mac OS X at '을 사용하여 매일 작업을 예약하여 트러시 폴더를 지우십시오.


0

OS X을 어떻게 사용합니까? at 명령을 사용하여 사용자의 일일 정리를 예약합니다. .Trash 폴더?

나는 다음과 같은 것을 생각하고있다.

rm -rf ~/.Trash/**/* | at 0:00 + 1 day

이것으로 매일 쓰레기를 청소할 수 있습니까?

우리는 로그인 스크립트의 일부로이 명령을 실행할 것이므로 모든 예약 된 작업을 지울 수있는 방법이 필요합니다. 할 수있는 방법이 있습니까? at -r all?


1
vs cron / launchd에서 사용하고 싶은 특별한 이유가 있습니까? AT는 이러한 유형의 활동에 적합하지 않을 수 있습니다.
Eric G

컴퓨터가로드 될 때마다 실행되는 로그인 스크립트를 통해 쉽게 일정을 잡을 수 있습니다. cron을 통해이 작업을 수행 할 수 있습니까?
Chris Nolet

다음 질문은 유용 할 수 있습니다. 그렇지 않다면 저희에게 알려주십시오. superuser.com/questions/126907/...
Eric G

그래, 그것을 보았다. 그러나 어떻게 일을 플러시하는지 확실하지 않습니다. 재설정시에 플러시합니까? 마찬가지로 다른 곳에서 다른 구문을 보았습니다. 가장 최근의 것이 무엇인지 궁금합니다.
Chris Nolet

답변:


1

rm -rf ~/Trash/* 루트 권한으로 실행하지 않는 한 종종 권한 거부 오류가 발생합니다. osascript -e 'tell app "Finder" to empty trash' 일부 파일이 사용 중이면 오류 대화 상자가 표시됩니다.

추가 할 수 있습니다. 0 0 * * * rm -rf ~/Trash/* 루트의 crontab ( sudo crontab -e ).

또는 launchd를 사용하여 다음과 같은 속성 목록을 저장하십시오. /Library/LaunchAgents/empty_trash.plist (그리고 루트로 소유하게하십시오) :

<?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.

엷은 갈색 자동으로 휴지통을 비우기위한 옵션도 있습니다.


고마워! 고마워! 그냥 내가 뭘 찾고 있었는지!
Chris Nolet
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.