• ベストアンサー
  • すぐに回答を!

「*.txt」以外の全てのディレクトリ・ファイルを削除したい(Bシェルにて)

  • 質問No.2500406
  • 閲覧数575
  • ありがとう数0
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 44% (102/228)

rm -rコマンドを使用して、「*.txt」以外の全てのディレクトリ・ファイルを削除したいのですが、正規表現の使い方が分かりません(それ以外を対象にするという方法が分かりません)。
またできれば、「*.txt」以外のディレクトリ・ファイルが存在しなくてもリターンコードは0が返ってきてほしいです。
どのようにすれば良いのでしょうか?
環境は、SolarisのBシェルです。

質問者が選んだベストアンサー

  • 回答No.2
  • ベストアンサー

ベストアンサー率 19% (214/1115)

試していないので不安ですが・・・カレント・ディレクトリーより下にあるファイルを対象にした場合、下記のような find コマンドで可能と思います。

# find . -name *.txt -exec rm {} \;
 rm {} \; の意味は、 find . -name で見つけたファイルを rm コマンドに引き渡して実行するということで、『 {} 』が引き渡されるファイル名に置き換えられ『 \; 』は -exec オプションを使う時のオマジナイです

その他の回答 (全2件)

  • 回答No.3

ベストアンサー率 36% (146/404)

rm *[^t][^x][^t]
じゃだめかな。

試していないけど。

正規表現は微妙に違うことがあるんで、充分確認してからやってね。
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ