Je me demande toujours: la plupart des outils GNU / Unix prennent des options sous la forme «moins quelque chose», parfois suivies d'un argument. Que faire si vous avez un fichier nommé moins quelque chose?
$ ls
-f
$ rm -f
$ ls
-f
$ mv -f abc
mv: missing destination file operand after `abc'
Try `mv --help' for more information.
$ cat -f
cat: invalid option -- 'f'
Try `cat --help' for more information.
ou
$ ls
-ohello.c
$ gcc -ohello -ohello.c
gcc: fatal error: no input files
compilation terminated.
C'est juste par curiosité; Je n'ai pas de cas d'utilisation pour cela.
Réponses:
Pour supprimer un fichier nommé
-x
, utilisezrm -- -x
(--
signifie fin des options) ourm ./-x
.la source
Il est assez courant de poser ce type de question dans le cadre d'un entretien. Une façon courante de gérer les fichiers avec des tirets est soit:
la source
Une question courante sous Unix. Le principal moyen est de donner le nom de chemin complet au fichier, de sorte qu'il n'a pas de tiret devant:
Certaines commandes vous permettent d'utiliser un tiret seul (ou un double tiret) pour terminer les options. Cependant, ce n'est pas nécessairement vrai avec toutes les commandes, ni même la même commande sur différents systèmes.
la source
tu dois utiliser
Ex:
la source