5

ファイルを作成するスクリプトがありますが、ファイルの先頭に 2 つのダッシュが含まれることがあります。それらを削除する方法はありますか?mvどちらも機能しません。

これが私が得ているエラーです:

$ ls
 --1355509766.jpg

$ rm --1355509766.jpg 
rm: illegal option -- -
usage: rm [-f | -i] [-dPRrvW] file ...
   unlink file

$ rm "--1355509766.jpg"
rm: illegal option -- -
usage: rm [-f | -i] [-dPRrvW] file ...
   unlink file
4

3 に答える 3

19

いつもの裏技は

rm ./--1355509766.jpg

更新:man rmこれについて言わなければならないことは次のとおりです。

To  remove a file whose name starts with a '-', for example '-foo', use
one of these commands:

       rm -- -foo

       rm ./-foo
于 2012-12-17T16:11:12.907 に答える
9

--オプションをパラメーターから分離するために使用します。

$ rm -- --1355509766.jpg

これは他のコマンドでも機能します。例えば:

$ touch -- -v         # create a file called -v
$ grep foo -- -v      # grep for "foo" in file called -v
于 2012-12-17T16:11:47.953 に答える
6

パスでファイル名を試してください:

$ rm ./--file.name

例:

$ echo dgag > --test.txt
$ ls
--test.txt
$ rm ./--test.txt
$ ls
于 2012-12-17T16:14:35.463 に答える