0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

個人的備忘録:-- を含むファイル名の扱い方。削除できなかったが、「./」と「--」を使えば削除できたので紹介してみた

Last updated at Posted at 2025-03-01

はじめに

Linux の rm コマンドを使う際、意図せずファイル名がオプションとして解釈 されてしまうことがあります。

特に --client-id のような名前のファイルを削除しようとすると、エラーが発生しがち です。

この問題に直面し、思うように削除できず困った経験 がありました。
そこで、今回は この問題の原因と、確実に削除する方法 について紹介します。

起きていた問題

Linux の rm コマンドを使って --client-id のようなオプションのように見えるファイルを削除しようとすると、rm がファイル名ではなくオプションとして解釈してしまい、削除できないことがあります。

実際のエラー画面

こんな感じで削除することができませんでした。

Screenshot 2025-03-02 at 3.27.12.png

例:

rm -rf --client-id

この場合、rm--client-id をオプションとして認識し、不明なオプションエラーを出してしまいます。

実際にこの問題に直面し、なかなか削除できずに困っていました。

解決方法

このようなケースでは、以下のいずれかの方法でファイルを削除できます。

方法 1: ./ をつける

ファイル名の前に ./ をつけることで、オプションではなくファイル名として認識させることができます。

rm ./--client-id

この方法を試したところ、正常にファイルを削除することができました。

方法 2: -- を使う

rm コマンドに -- を渡すと、それ以降の引数をオプションではなくファイル名として扱うようになります。

rm -- --client-id

この -- は「これ以降はオプションではなく引数として解釈する」という意味になります。Linux コマンドではよく使われるテクニックなので覚えておくと便利です。

まとめ

Linux では rm コマンドを使う際に、-- で始まるファイル名がオプションとして誤解釈されることがあります。

そのため、削除しようとしてもエラーが発生し、困ってしまうことがあります。

しかし、./ をつけるか -- を使うことで、簡単に削除できることが分かりました。

今後もこのような問題に直面した際には、これらの方法を試してみることをおすすめいたします。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?