📟

MacのスクリーンショットはDocに貯める。定期的にゴミ箱へ。

2 min read

背景

デスクトップは汚したくない。
毎回、削除するのがだるい。

目次

  1. スクショはDocに貯める
  2. スクショは1日ごとにゴミ箱へ
  3. ゴミ箱は1ヶ月ごとに自動で削除

1.スクショはDocに貯める

Terminal
# 保存先のディレクトリを作る
$ mkdir ~/ScreenShots

# 保存先を変更
$ defaults write com.apple.screencapture location ~/ScreenShots

# 現在の保存先を確認
$ defaults read com.apple.screencapture location
/Users/hayashikengo/ScreenShots/

スクショのディレクトリをDocに追加しとくと便利。
まず、Finderを開く。

Terminal
$ open ~

Docにドラック&ドロップ。

2.スクショは1日ごとにゴミ箱へ

cronの設定

crontabで定期的にScreenShotsをゴミ箱に移動。
下記コマンドで、vimを起動。

Terminal
$ crontab -e

毎朝6時に、ScreenShopts配下のファイルをゴミ箱に移動させるcronを設定。

cron
0 6 * * * mv ScreenShots/* ~/.Trash

ダウンロードも毎回削除だるいので、ついでに設定。
毎月1日に、Downloadsはゴミ箱へ。

crom
0 0 1 * * mv Downloads/* ~/.Trash

cronの時間の定義は、↓のツールを使うと楽です。

https://crontab.guru/

cronのフルディスクアクセスをオンにする。

cronのパスをクリップボードにコピー。

$ which cron | pbcopy

System Prefarences -> Security & Privacy -> Privacy+ をクリック。
cmd + shift + g でファイルパスをペースト。

追加されたcronFull Disk Accessをオンにする。

3.ゴミ箱は1ヶ月ごとに自動で削除

左上のAppleロゴ -> About This Mac -> Storage -> Manage...を開いて、赤枠の部分をクリック。

cron実行も考えたが、ルートでrm -rf ScreenShots/*を実行するのは怖い。
zshだと、*が存在した場合-rfつけても削除をするか聞かれる仕様だが、bashだと聞かれない。

参考

https://betterprogramming.pub/https-medium-com-ratik96-scheduling-jobs-with-crontab-on-macos-add5a8b26c30
https://stackoverflow.com/questions/66106001/add-files-to-dock-on-macos-using-the-command-line
https://qiita.com/shizen-shin/items/7f2a6c57143380b310cd

Discussion

ログインするとコメントできます