それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

rm の替わりにゴミ箱に放り込むコマンドが欲しい.

rm で間違って消してしまわないために.

alias rm ="rm -i"

これで毎回確認ダイアログが出るよ。

オオカミ少年になってしまった

でもオオカミ少年になります。Y連打とか始めちゃうのでオススメできない.全く役に立たない

trash-cli でrm をごみ箱に移動にする

trash-cliで rm をごみ箱機能にマッピング

はじめsaferm を使おうと思った。今回はCygwinなのでAptサポートなし.だからdeb展開して・・ってめんどくさかった.

trash-cliPythonでできた、ごみ箱ソフト,Gnomeのごみ箱と互換性があるそうだ。

trash-cli インストール

easy_install trash-cli

インストールされるコマンド

/usr/binに次のコマンドがインストールされます。

  • trash-put
  • trash-list
  • restore-trash
  • volume-of
  • trash-empty

trash-put  ゴミ箱に入れる

takuya@letsnote:~$ trash-put  ./httpd-vhosts.conf

trash-list ゴミ箱の中を見る

trash-list でごみ箱の中身を見る

trash-list で、元ファイルパス、さらに捨てた日付まで分ります.便利!!!

takuya@letsnote:~$ trash-list
2011-06-23 17:41:28 /home/takuya/httpd-vhosts.conf

restore-trash ゴミ箱から元に戻す

ゴミ箱に入れたファイルを,元々のポスに戻すことが出来ます.

takuya@letsnote:~$ restore-trash
   0 2011-06-23 17:41:28 /home/takuya/httpd-vhosts.conf
What file to restore [0..0]: 0
                            # ↑どのファイルにするか番号で指定
takuya@letsnote:~$ ls /home/takuya/httpd-vhosts.conf  -l
-rw-r--r--+ 1 takuya None 13050 6月  22 18:22 /home/takuya/httpd-vhosts.conf
#戻ってる↑

また、一度に纏めて戻せます便利!

trash-empty ゴミ箱を空にする

takuya@letsnote:~$ trash-list
2011-06-23 17:44:49 /home/takuya/httpd-vhosts.conf
takuya@letsnote:~$ trash-empty
takuya@letsnote:~$ trash-list
takuya@letsnote:~$ # 空

3日以上前のモノを全て捨てるtrash-empty

takuya@letsnote:~$ trash-empty 3

と書けば、3日以上過ぎたファイルを消せます.便利!

ゴミ箱の場所

cygwin の場合次の場所に出来ました.

/home/takuya/.local/share/Trash

MacOSLinuxdもBash環境であれば大丈夫と思います.


場所を変えたいときはXDG_DATA_HOMEを変えると良いかもしれません.
だけどXDG_DATA_HOMEを使っている他のソフトにも影響ありかも

XDG_DATA_HOME実装箇所

    def home_trash_dir(self) :
        return HomeTrashDirectory(Path(self.home_trash_dir_path()))

    def home_trash_dir_path(self):
        if 'XDG_DATA_HOME' in self.environ:
            XDG_DATA_HOME = self.environ['XDG_DATA_HOME']
        else :
            XDG_DATA_HOME = self.environ['HOME'] + '/.local/share'

        return XDG_DATA_HOME + "/Trash"
        

cygwin だと

Cygwinだと、Windowsのゴミ箱に入るんじゃないかと甘い期待した僕が馬鹿でした.
Windowsのゴミ箱形式でなんとかしたいですね

http://support.microsoft.com/default.aspx?scid=kb;ja;136517

インストールログ

takuya@letsnote:~$ easy_install trash-cli
Searching for trash-cli
Reading http://pypi.python.org/simple/trash-cli/
Reading http://code.google.com/p/trash-cli
Reading http://code.google.com/p/trash-cli/wiki/Download
Best match: trash-cli 0.11.3-r315
Downloading http://trash-cli.googlecode.com/files/trash-cli-0.11.3-r315.tar.gz
Processing trash-cli-0.11.3-r315.tar.gz
Running trash-cli-0.11.3-r315/setup.py -q bdist_egg --dist-dir /home/takuya/AppData/Local/Temp/easy_install-pMHkPt/trash-cli-0.11.3-r315/egg-dist-tmp-6TLqbw
zip_safe flag not set; analyzing archive contents...
Adding trash-cli 0.11.3-r315 to easy-install.pth file
Installing trash-list script to /usr/bin
Installing restore-trash script to /usr/bin
Installing trash-put script to /usr/bin
Installing volume-of script to /usr/bin
Installing trash-empty script to /usr/bin

Installed /usr/lib/python2.6/site-packages/trash_cli-0.11.3_r315-py2.6.egg
Processing dependencies for trash-cli
Searching for Unipath>=0.2.0
Reading http://pypi.python.org/simple/Unipath/
Reading http://sluggo.scrapping.cc/python/unipath/
Best match: Unipath 0.2.1
Downloading http://sluggo.scrapping.cc/python/unipath/Unipath-0.2.1.tar.gz
Processing Unipath-0.2.1.tar.gz
Running Unipath-0.2.1/setup.py -q bdist_egg --dist-dir /home/takuya/AppData/Local/Temp/easy_install-xV8Ypm/Unipath-0.2.1/egg-dist-tmp-ZIH8iU
zip_safe flag not set; analyzing archive contents...
Adding Unipath 0.2.1 to easy-install.pth file

Installed /usr/lib/python2.6/site-packages/Unipath-0.2.1-py2.6.egg
Finished processing dependencies for trash-cli

safe-rm

aptitude install saferm
alias rm='saferm'

その他類似ゴミ箱機能

ごみ箱をじつげんするソフトはいっぱいありますね。

  • trash by skymt
  • Trashcan for Rox-Filer
  • trash.sh
  • cn by Richard Neill
  • File Rename Utils
  • Gnome Trashcan
  • Safe RM


色々あって迷います、誰か比較してくれないカナー