web-dev-qa-db-ja.com

ターミナルからSnowLeopardのゴミ箱にファイルを移動します

Snow Leopardを使用すると、ユーザーはFinderからゴミ箱に移動したファイルを「元に戻す」ことができます。しかし、私がmv <file> ~/.Trashコマンドラインから「元に戻す」オプションが表示されません。

Snow Leopardに、ファイルをゴミ箱に移動しながら「元に戻す」ことができるネイティブコマンドはありますか?

13
matpie

ファイルをごみ箱に移動すると、OSXは.DS_Store内の~/.Trashファイルを「元に戻す」情報で更新します。 ( 詳細についてはこの質問を参照

これを更新するには、ファイルをターミナルのゴミ箱に移動するときに.DS_Storeファイルも更新する必要があります。

2
Josh K

Ruby gem osx-trash をインストールすることをお勧めします。

どうやって?

Sudo gem install osx-trash

使用法?

Usage: trash [OPTIONS] <file> [<file> ...]
       trash [-e | --empty]
       trash [-l | --list]
Specific options:
    -e, --empty                      Empty the trash
    -l, --list                       List items in the trash
    -h, --help                       Show this message
    -v, --version                    Show version

Manipulate to the Finder's trash.
9
hobodave

rmtrash プログラムが必要です。

Finderで行ったかのように、これを使用してゴミ箱にアイテムを追加できます。

編集:rmtrashを使用して削除と回復を試みました。 Finderから削除するのとまったく同じように機能します。ファイルはゴミ箱に表示され、まったく同じようにドラッグして空にすることができます。 2006年頃から使用しています。

2
sal

MacOSX SDKには、関数 FSPathMoveObjectToTrashSync および関連する関数があります。その周りにPython(または何でも)スクリプトを書くのは簡単なはずです。

編集:コーディングしただけです。ここで見つけることができます: rm-trash.py

2
Albert

代替案を見た後、私はそれを見つけました:

  • Rmtrashプログラムは、システムAPIを使用せずにファイルをごみ箱ディレクトリに移動するため、 。DS_Storeファイルは更新されません 。また、リサイクル音は鳴りません。
  • pythonスクリプトは、Mountain Lionで非推奨のメソッドを呼び出しますが、これもリサイクルサウンドをトリガーしません。
  • Rubyスクリプトは機能しますが、遅いです(python 1のように)。

だから私は 自分のゴミ箱コマンドを書いたNimrodプログラミング言語なので高速 で実装され、バックグラウンドプロセスでゴミ箱の音をトリガーします。つまり、コマンドを入力して実行すると、サウンドの再生を待つ必要がないため、すぐに終了します。短所は、nimrodをコンパイルしてから、このプログラムをコンパイルする必要があることです(バイナリは申し訳ありません!)。

PS:正直なところ、最良の実装は、私がNimrodから使用している公式APIを使用したrmtrashの実装です これは明白な目的です-c

チェックアウト - trash-cli 。クロスプラットフォームで動作し、ゴミの音はなく、プットバックをサポートします。

(requires Node.jsでインストールできます:

$ npm install --global trash-cli

または、Node.jsを使用したくない場合は、ネイティブバイナリをインストールできます osx-trash 手動。

0
Sindre Sorhus