• ベストアンサー

特殊なファイル名のファイルの削除方法

間違えて "---------------------" という名前のファイルが作成されてしましました。これを削除するにはどうしたらよいのでしょうか? 以下のよう"---"がにオプションと解釈されてしまい、ファイル名として認識されなく困っています。 % >rm ------------------ rm: unrecognized option `---------------------' Try `rm --help' for more information. 宜しくお願い致します。

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

  • ベストアンサー
  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

OSの提示はしましょうね。 UNIX/unix like系の話なら、おそらく↓でいけるかと。 rm -- ------------------

tk_1980024
質問者

お礼

ありがとうございます。ファイルの削除ができました。 # OSはLinux(RHEL4)でした。 後追いですが、manでrmをみたらD-Matsuさんの方法が出ていました。 覚えておこうと思います。 To remove a file whose name starts with a '-', for example '-foo', use one of these commands: rm -- -foo rm ./-foo

その他の回答 (2)

回答No.3

普通に・・ rm ./--------------------- で消えるはずですよ。 ハイフンで始まるから、オプション指定と誤解されるだけですので、ハイフン以外の文字で始まるように ファイルを指定すればok。 (ルートからのパス指定でも良いし、上のように相対指定でも良い)

tk_1980024
質問者

お礼

書き込み有難うございます。 以下参考までですが(No.1の方にも書きましたが)、後追いでmanをみたらこの方法も出ていました。 今回は勉強になりました。どうも有難うございます。 To remove a file whose name starts with a '-', for example '-foo', use one of these commands: rm -- -foo rm ./-foo

回答No.2

#1の方法で無理なら、ちょっと危険な方法ですが・・・ 「# rm  -i  a*」などで検索ファイルを限定することをお勧めしまが・・・ 最悪の場合は root特権で # rm  -i  * (削除するファイル名)...y/n <- 確認して y か n で答える root特権で「*」を指定すると全てのファイルが対象になるので不用意に y/n を応答するとシステムが起動しなくなる可能性もある注意が必要ですが、全てのファイルが対象になるので消すファイルは見つかります。

tk_1980024
質問者

お礼

書き込み有難うございます。最初僕もこの方法を試していたのですがちょっとファイル数が多かったので正攻法が知りたく思っていたところでした。。。

関連するQ&A