ゴミ箱を通さずに不要ファイルを直接削除するには?
例えば、USBメモリーとか外付けHD等で、不要ファイルを削除しようとゴミ箱に入れても、その外付け機器のボリューム内のゴミ箱に入っているだけで、実質的な削除にはならず、ディスクユーティリティで消去しています。
これを、「その場で削除」したいのですが、どうすれば良いでしょうか?
Automatorで、何かできるでしょうか?
よろしくお願いします。
例えば、USBメモリーとか外付けHD等で、不要ファイルを削除しようとゴミ箱に入れても、その外付け機器のボリューム内のゴミ箱に入っているだけで、実質的な削除にはならず、ディスクユーティリティで消去しています。
これを、「その場で削除」したいのですが、どうすれば良いでしょうか?
Automatorで、何かできるでしょうか?
よろしくお願いします。
Terminalで出来ますが取り消しが効きません。それでも宜しければTerminalコマンドで可能です。
注意 間違って消去すると取り返しがつかなくなります。自己責任で行って下さい。
sudo srm -fr [path_to_file/foler] あるいはsudo rm -fr [path_to_file/folder]でPasswordが必要です。前者がSecure Emptyです。
使い方はsudo rm -fr /Users/pippi/と書いてReturnで私のHome pippiが消えてしまいます。File/Folderを/Users/pippi/の所にDrag & DropするとPathが入ります。
Folderの中を消すのでしたらWild Cardsの * を使って下さい。
例えばゴミ箱の中身を消したければ rm -fr ~/.Trash/* のように使います。
sudoはPasswordが必要なFile/Folderを消す時に使って下さい。
注意 TigerではSymbolic Linkの最後の/を取らないとオリジナルを消去します。
# rmの使い方の詳細はman rmで表示するManualをご覧下さい。
他の手としては、ネットで「ゴミ箱 OSX フリー」何かで検索してみるとか、個人の嗜好が大きいので、どれがいいのかは私には判断できません。
ファイルを強制削除して、取り消しが効かないというリスクの高い能力故に、アプリケーションを利用するにしても慎重に選ぶ必要があると思います。
例えばPowerTrash-Xだと、名前の先頭に半角スペースを入れたファイルやフォルダを削除しようとすると、その上位のフォルダごと削除してしまうので気をつけた方がいいです。
他のソフトでも多くは、シンボリックリンクの削除を選択するとオリジナルを削除してしまうので注意が必要になります。
Automatorで作成するのであれば
1) アクション>ユーティリティ>確認を求める #いきなり削除は怖すぎるので
2) アクション>ファイルとフォルダ>選択された Finder 項目を取得
3) アクション>ユーティリティ>シェルスクリプトを実行
シェル: /bin/bash 入力の引き渡し方法:引数として
for f in "$@"
do
rm -rf "$f"
done
として保存すれば、削除したいファイルを選択した状態で実行すればそのファイルやフォルダを削除することが可能になります。
ただし、これもシンボリックリンクを削除しようとするとオリジナルが削除されるので注意が必要です。
シンボリックリンクのみを削除するようにする方法が知りたいと思うのですが難しいのでしょうか。
いい知恵をお持ちの方がいらっしゃいましたら、ご助言いただければと思います。
返事が遅くなり、すみません。
ピッピさん始め、他のお答えいただいてる方も、私の書き方が悪かったのだと思いますが、より複雑な方法になってしまっているようです。
ウインドウズでは外付けメモリーなどでは、削除するだけでメモリーが回復したので、ワン・アクションですんだのですが、MACでは外付けの場合、ゴミ箱に入れても見えなくなっているだけで、フォーマットされた状態にはなりません。
ゴミ箱を空にすれば良いのですが、空にすると外付けだけでなく、本体の方のゴミ箱も空になってしまいます。
まだ、本体の方のゴミ箱を空にしたくない場合、ディスクユーティリティからフォーマットと言うことになります。
それが面倒なので、なにか簡単にできる方法はと皆さんにお訪ねしたわけです。
どうも皆さんを煩わせてしまったようで、申し訳ありませんでした。
これもシンボリックリンクを削除しようとするとオリジナルが削除される
rm ではシンボリックリンクのオリジナルは削除されません。シンボリックリンクそのものが削除されるだけでオリジナルは残ります。(確かめてみました)
もしかしてハードリンクでしょうか?
ハードリンクだとすると,オリジナルが削除されるのは機構上やむないところです。(ハードリンクのハードたるゆえんです)
トピ主さんの要望には,ターミナルで rm を使うのが一番簡単で強力です。ファイル名の指定に,正規表現を使えば,簡単な表記で目的の関連ファイルを全部消せるようにも出来ます。新しいことを勉強したくないということなら仕方ないですが。(勉強という程のものでもないですけど)。
rm ではシンボリックリンクのオリジナルは削除されません。シンボリックリンクそのものが削除されるだけでオリジナルは残ります。(確かめてみました)
ターミナルからの実行ではなくAutomatorで試していただいた結果でしょうか?
もしかしてハードリンクでしょうか?
いいえ、シンボリックリンクで間違いありません。
ターミナルからの実行だと確かに同じコマンドでオリジナルではなくシンボリックリンクのみが削除されますが、スクリプトでの実行だとシンボリックリンクが残りオリジナルのみが削除されます。
# 出回っている多くのアプリケーションの挙動がそうであるのは、スクリプトのこの挙動によるためなのではないかと思うのですが・・・
追記:Automatorでオリジナルが削除されてしまうのは、「選択された Finder 項目を取得」の段階で展開されたアドレスを取得してしまうためかと思われます。
本体の方のゴミ箱は空にせず、外付けだけ空にしたいのです。
実をいうと、この概念、私にはないんですよね…。ゴミ箱に入れたものを消さないというのがわからないんです。(苦笑)
"必要ないからゴミ箱に入れたわけで、いつ削除したってかまわないでしょう"と思ってます。(私なんかは、ゴミ箱に入れたらすぐに空にしますから。)そういう使い方だったら、ゴミ箱に入れるのではなく、"ゴミ箱行きかな?"みたいなフォルダーを作ってそこに一旦入れておいた方が良いように思います。ゴミ箱なら、操作を間違って空にしちゃったら消えちゃいますから、すぐに消さないようなファイルはゴミ箱に入れるべきではないかと。
まぁ、とらえ方と使い方の違いですけどね。
ネットで「USBメモリ ゴミ箱 OSX フリーウェア」と検索したら、下記のアプリケーションが見つかりました。ドラッグ&ドロップでゴミ箱を通さず削除してくれるとの説明です。私は、使ったことがありません。
Graveyard - 1.32
ネットで、評判を調べてみて、試してみてはいかがでしょうか。ダウンロードは、versiontrackerで出来るようです。リンクしていいのかどうか分からないので、ご自分で検索して下さい。
Vector何かで
と辿ってみては、如何でしょうか。(リンクしていいのかどうか不明なのでURLを記載しません)
ドラッグ&ドロップすると、完全削除してくれるようなものもあるようです。私は、使ってませんが。
他の手としては、ネットで「ゴミ箱 OSX フリー」何かで検索してみるとか、個人の嗜好が大きいので、どれがいいのかは私には判断できません。
Terminalをお勉強したら?
# 使いこなせば非常に便利です。
ぴっぴさん、アドバイスを有難うございます。
それに、私は60才の男性で、今から細かく勉強する気も時間もありません。
ただ便利に、私の職業であるデザインのために使いたいだけですので。
取り急ぎ、ご返事まで。
>ディスクユーティリティで消去しています。
なぜわざわざこのような面倒なことをするのでしょう?
ゴミ箱を空にするだけだと思うのですが?
これを、「その場で削除」したいのですが、どうすれば良いでしょうか?
ゴミ箱に入れて、すぐにその場で「ゴミ箱を空にする」をすれば良いだけ。
有難うございます。
ピッピさんにも、書きましたが、目的はゴミ箱を通すのがイヤなのではなく、一発で外付けのメモリーやHDの容量を回復させることにあります。
ウインドウズでは、それができましたので。
MACで、それができないのがいらだたしいのです。
教えていただいたページの方の質問も、おそらく私と同じなのでは無いかと思うのですが・・・
いずれにせよ、有難うございました。
すみません。私の言葉が足りなかったと思うのですが、本体の方のゴミ箱は空にしたくないのです。
外付けの方だけ、空にしたいのです。
いずれにせよ、回答、有難うございました。
ゴミ箱を通さずに不要ファイルを直接削除するには?