Ne vous est-il jamais arrivé d'avoir le message suivant lors d'un ls, mv, cp, rm, du, etc ?

ls: illegal option -- -

Explication

Ce type de message apparaît typiquement lorsqu'un fichier commence par un '-'

Le programme essayant de le traiter pense voir une suite d'argument (à la manière de ls -lrt, cp -p, ...).

Comment le contourner ?

Très simple : il suffit d'utiliser '--' juste avant le nom du fichier. Ainsi on précise de façon explicite au programme qu'il n'y a plus d'argument à prendre.

Exemple (AVANT) :

$ ls -l -test.mov
ls: illegal option -- -
usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...]

Exemple (APRES) :

$ ls -l -- -test.mov
-rw-r--r--  1 bash  users  0 27 mai 19:00 -test.mov

Comment renommer / supprimer le fichier ?

Pour renommer ou supprimer le fichier incriminé là encore il faudra utiliser '--' au risque de voir l'opération refusée :

$ mv -- -test.mov test.mov

$ rm -- -test.mov
Tag(s) : #bash, #linux, #mac

Partager cet article

Repost 0
Pour être informé des derniers articles, inscrivez vous :