rmtrashがHomebrewでインストールできなくなった
ライセンスが不透明で作者のレスポンスがないのでHomebrewから最近外されたらしい.
https://github.com/Homebrew/homebrew-core/pull/65438
別のrmtrashの登録が検討されているらしいが,今(2020年12月14日)は使えないので代替を考える.
代替候補
Macではコマンドラインからシステムのゴミ箱に捨てられるものが欲しい.
1のtrashはrmtrashとほぼ一緒.Homebrewでインストールできるのは楽.でもFinderで開いたゴミ箱から削除したファイルを戻すことはできなかった.(rmtrashがゴミ箱から戻すことができたかどうかは忘れた.)
---------- 2021年10月29日 コメントを参考に追記 trash -F を使えばゴミ箱から戻すこともできる。 Homebrewでインストールできるのでこれが一番楽。 下の方に設定も追記した。 ---------- 追記終了2はスクリプトをダウンロードする必要があるが,Finderで開いたゴミ箱から削除したファイルを戻すことができる.
3は高機能だが,最近のバージョンではシステムのゴミ箱に捨てる機能がなくなったらしい.
とりあえず2のtrashというスクリプトが良さそうなのでしばらく使ってみる.
Homebrewのtrash (2021/10/29 追記)
インストール
$ brew install trash
設定
rm
にaliasしておく。trash -F
で削除後、ゴミ箱から戻せる。ファイルもディレクトリも削除可能。
.zshrc
等に下記のように書いておく
if type trash > /dev/null 2>&1; then
alias rm='trash -F'
fi
上記2のtrashの設定
---------- 2021年10月29日 これはもう使ってない。Homebrewのtrashを使用している ---------- 追記終了https://github.com/h-matsuo/macOS-trash
ここからスクリプトをダウンロードかコピペして,パスが通ったところに実行権限をつけて置いておけばいい.
rmにエイリアスしておいた.ディレクトリも削除できるように-r
オプションもつけた.
if type trash > /dev/null 2>&1; then
alias rm='trash -r'
fi
Linuxでrmを置き換え
スパコンなど,サーバー上のLinuxでは自分でゴミ箱となるディレクトリ(~/.Trash)を作って,rmを使わずに,そこにファイルをmvで一旦移動させるようにしている.
ディレクトリは自分で好きなところに作れるので,/work
をよく使うサーバーでは /work
以下に作るようにしている.
エイリアスの設定.
if [ -d ${HOME}/.Trash ]
then
alias rm='mv --backup=numbered --target-directory=${HOME}/.Trash'
fi
--backup=numbered
オプションを指定すると、移動先に同じファイル名があった場合に上書きではなく,ファイル名に番号をつけて移動してくれる.
--target-directory
オプションであらかじめ指定したディレクトリにファイルを移動できる.
自分で作ったゴミ箱ディレクトリの中身を空にするスクリプトも作っておいて,pathが通った場所に実行権限をつけておいておく.
#!/bin/sh
rm -rf ~/.Trash/*
exit