1. ホーム
  2. bash

ダブルハイフンで始まるファイルを削除するには?

2023-11-15 02:38:50

質問

私の Unix マシンには、以下のように始まるいくつかのファイルがあります。

 --

--testings.html

これを削除しようとすると、次のようなエラーが発生します。

cb0$ rm --testings.html
rm: illegal option -- -
usage: rm [-f | -i] [-dPRrvW] file ...
       unlink file

私は

rm "--testings.html" || rm '--testings.html' 

が、何も動作しない。

ターミナルでそのようなファイルを削除するにはどうすればよいですか?

どのように解決するのですか?

rm -- --testings.html

-- で始まっている場合でも、オプションとしてではなく、ファイル名として扱うように指示します。 - .

これは、rmコマンドに限ったことではありません。getopt 関数はこれを実装しており、多くの (すべての?) UNIX スタイルのコマンドで同じように扱われます。 -- はオプション処理を終了させ、それ以降のものは通常の引数となる。

http://www.gnu.org/software/hello/manual/libc/Using-Getopt.html#Using-Getopt