简体中文
trash-cli は、元のパス、削除日、権限を記録したファイルをゴミ箱に捨てます。 KDE、GNOME、および XFCE で使用されているのと同じゴミ箱を使用しますが、コマンド ライン (およびスクリプト) から呼び出すことができます。
次のコマンドが提供されます。
trash-put ゴミファイルとディレクトリ。 trash-empty ゴミ箱を空にします。 trash-list ゴミ箱に入れられたファイルをリストします。 trash-restore ゴミ箱に入れられたファイルを復元します。 trash-rm はゴミ箱から個々のファイルを削除します。
ファイルをゴミ箱に入れる:
$ ゴミ箱置き foo
ゴミ箱に捨てられたファイルをリストします。
$ ゴミリスト 2008-06-01 10:30:48 /ホーム/アンドレア/バー 2008-06-02 21:50:41 /ホーム/アンドレア/バー 2008-06-23 21:50:49 /ホーム/アンドレア/フー
ゴミ箱内のファイルを検索します。
$ ゴミリスト | grep foo 2007-08-30 12:36:00 /ホーム/アンドレア/フー 2007-08-30 12:39:41 /ホーム/アンドレア/フー
ゴミ箱に捨てられたファイルを復元します。
$ ゴミ箱の復元 0 2007-08-30 12:36:00 /ホーム/アンドレア/フー 1 2007-08-30 12:39:41 /ホーム/アンドレア/バー 2 2007-08-30 12:39:41 /home/アンドレア/bar2 3 2007-08-30 12:39:41 /home/アンドレア/foo2 4 2007-08-30 12:39:41 /home/アンドレア/foo 復元するファイル [0..4]: 4 $ ls foo ふー
既存のファイルを上書きしながら、ゴミ箱に入れられたファイルを復元します。
$ echo "オリジナル">foo $ls ふー $ゴミフー $ echo "new">foo $trash-restore --overwrite 0 2022-11-01 22:15:00 /home/アンドレア/フー 復元するファイル [0..0]: 0 $キャットフー オリジナル
「,」で区切られた複数のゴミ箱ファイルを復元します。範囲もサポートされています:
$ ゴミ箱の復元 0 2007-08-30 12:36:00 /ホーム/アンドレア/フー 1 2007-08-30 12:39:41 /ホーム/アンドレア/バー 2 2007-08-30 12:39:41 /home/アンドレア/bar2 3 2007-08-30 12:39:41 /home/アンドレア/foo2 復元するファイル [0..3]: 0-2、3 $ ls foo bar bar2 foo2 foo bar bar2 foo2
ゴミ箱からすべてのファイルを削除します。
$ ゴミ箱が空
<日> 以上前に削除されたファイルのみを削除します。
$ ゴミ箱が空の <日>
例:
$日付 2008 年 2 月 19 日火曜日 20:26:52 CET $ ゴミリスト 2008-02-19 20:11:34 /ホーム/エイナー/今日 2008-02-18 20:11:34 /home/einar/昨日 2008-02-10 20:11:34 /home/einar/last_week $ ゴミ箱を空にする 7 $ ゴミリスト 2008-02-19 20:11:34 /ホーム/エイナー/今日 2008-02-18 20:11:34 /home/einar/昨日 $ ゴミ箱を空にする 1 $ ゴミリスト 2008-02-19 20:11:34 /ホーム/エイナー/今日
パターンに一致するファイルのみを削除します。
$trash-rm *.o
注: パターンをシェル展開から保護するには、引用符を使用する必要があります。
ステップ
sudo mkdir --parent /.Trash sudo chmod a+rw /.Trash sudo chmod +t /.Trash
できますが、そうすべきではありません。最初の頃はそうするのが良い考えだと思っていましたが、今では考えが変わりました。
trash-put のインターフェースは rm と互換性があるようですが、セマンティクスが異なるため問題が発生します。たとえば、rm ではディレクトリを削除するために -R が必要ですが、trash-put では必要ありません。
rm を使用しないことを通知するエイリアスを付けることができます。
alias rm='echo "これはあなたが探しているコマンドではありません。";間違い'
その後、本当に rm を使用したい場合は、単にバックスラッシュを先頭に追加してエイリアスをバイパスします。
rm 希望のないファイル
Bash エイリアスは対話型シェルでのみ使用されるため、このエイリアスの使用は rm の使用を想定したスクリプトに干渉しないことに注意してください。
ホーム パーティションから削除されたファイルはここに移動されます。
~/.local/share/ゴミ箱/
これを実行します:
(crontab -l ; echo "@daily $(ゴミ箱を空にする) 30") |クロンタブ -
これにより、毎日実行されるtrash-emptyコマンドでcrontabファイルが更新され、30日より古いファイルが削除されます。 crontab を確認するには、crontab -l を使用します。
pipx が利用可能な場合:
pipx ゴミ箱 CLI をインストールする
あるいは、バニラ pip を使用してインストールします。
pip インストール ゴミ箱-cli
注: ~/.local/bin を PATH に追加することもできます。
echo 'export PATH="$PATH":~/.local/bin' >> ~/.bashrc ソース ~/.bashrc # .bashrc をリロード
アンインストールには以下を使用します。
pipxアンインストールtrash-cli
または:
pip アンインストール ゴミ箱-cli
まず最初に、以前のバージョンのtrash-cliをアンインストールする必要があります。
$ [sudo] pip uninstalltrash-cli # 以前のバージョンを削除します (pip を使用) $ [sudo] apt-get delete Trash-cli # 以前のバージョンを削除します (apt を使用) $ [sudo] yum uninstalltrash-cli # 以前のバージョンを削除します (yum を使用) $ ... # ディストリビューションのパッケージマネージャーを参照してください
次に、git から最新バージョンをインストールします。
$ [sudo] pip install git+https://github.com/andreafrancia/trash-cli
ユーザーによるインストール後、次の行を .bashrc/.zshrc に追加するとよいでしょう。
エクスポート PATH=~/.local/bin:"$PATH"
Debian/Ubuntu (apt):
sudo apt install ゴミ箱-cli
Arch Linux (パックマン):
sudo pacman -S ゴミ箱-cli
フェドーラ (DNF):
sudo dnf インストールゴミ箱-cli
次の方法でインストールする必要があります。
pipx インストール 'trash-cli[完了]'
または:
pip install 'trash-cli[完了]'
それから:
cmds=(ゴミ箱-ゴミ箱を空にする-リストのゴミ箱-ゴミ箱を復元する-ゴミ箱を置く) ${cmds[@]} の cmd の場合;する $cmd --print-completion bash | sudo tee /usr/share/bash-completion/completions/$cmd $cmd --print-completion zsh | sudo tee /usr/share/zsh/site-functions/_$cmd $cmd --print-completion tcsh | sudo tee /etc/profile.d/$cmd.completion.csh 終わり
バグを発見した場合は、ここに報告してください。
https://github.com/andreafrancia/trash-cli/issues
[email protected] を使用して電子メールを送信してください。
環境設定:
Python -m venv .venv ソース .venv/bin/activate pip install -r 要件-dev.txt -r 要件.txt
テストの実行:
pytest -m 'not low' # 高速なテストのみを実行します pytest -m 'slow' # 遅いテストを実行します pytest # すべてのテストを実行する
Paypal の寄付者に感謝します。
プロジェクトの貢献者に感謝します。
オープンソース開発のライセンスを提供してくれた JetBrains に感謝します