linuxであるフォルダ以下の全サブフォルダ内のファイルだけ削除するコマンドを教えてください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2006/03/16 18:12:26
  • 終了:2006/03/23 18:15:03

回答(5件)

id:nekonami No.1

猫並回答回数17ベストアンサー獲得回数22006/03/16 18:17:06

ポイント19pt

フォルダ名を folder とすると、

% rm -fv `find folder -type f`

find いついてはこちらをどうぞ。

id:Kumappus No.2

くまっぷす回答回数3784ベストアンサー獲得回数1852006/03/16 18:18:33

ポイント19pt

例えば hogeというディレクトリ以下でその処理をしたいときは

find hoge -type f -exec rm {} \;

念のため実行前に

find hoge -type f -print

で確認した方が吉?

findのマニュアル。

id:achipu No.3

achipu回答回数382ベストアンサー獲得回数32006/03/16 18:38:36

ポイント19pt

$ rm -r hoge

  • rオプションでどうでしょうか。

http://docs.hp.com/ja/B2355-90813/ch02s15.html

id:makotonya No.4

makotonya回答回数8ベストアンサー獲得回数02006/03/16 18:38:58

ポイント19pt

一例としてfindでファイルだけ探してrmで削除する方法を紹介します。

typeオプションのfは通常のファイルを意味し、dならディレクトリを意味するなど、8種類ほどありました。

rm `find . -name '*' -type f`

rm `find dir -name '*' -type f`

rm `find path -name '*' -type f`


http://www.k-tanaka.net/unix/find.html

id:hshin No.5

hshin回答回数2ベストアンサー獲得回数02006/03/16 18:47:32

ポイント19pt

findコマンドで、ファイルだけ検出して、検出したファイルをxargsでまとめて、rmに渡してはどうでしょうか。

% find {targetdir} -type f | xargs rm -f

{targetdir}には、削除したいディレクトリ名を入れてください。

findのマニュアル:http://www.linux.or.jp/JM/html/GNU_findutils/man1/find.1.htm...

xargsのマニュアル:http://www.linux.or.jp/JM/html/GNU_findutils/man1/xargs.1.ht...

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

  • [unix] find(1) の使い方 つれづれ 2006-03-17 10:09:08
    フォルダ名を folder とすると、 % rm -fv `find folder -type f` find いついてはこちらをどうぞ。 ちょっとだけカッコよく find(1) を使う find の結果が多すぎると失敗しないか? xargs(1) 使った
「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません