Dans le manuel GNU pour tar
, il y a l'exemple suivant pour montrer que l'ordre des options est important :
tar -cfv collection.tar blues folk jazz
Dans ce cas, parce que v
est placé après f
, alors l'archive tar sera nommée "v", et tar
va essayer d'ajouter collection.tar
à l'archive si elle existe dans le répertoire courant. Mais si j'omets le -
depuis le début, alors la commande fonctionne comme nous le voudrions, malgré v
étant placé après f
. Pourquoi ?
Réponse acceptée :
Parce que c'est ainsi que fonctionnent les différents styles d'options et qu'ils se comportent différemment.
La page de manuel indique pour le style UNIX ou short-option , celui qui est précédé d'un seul tiret.
N'importe quel nombre d'options ne prenant pas d'arguments peut être regroupé après un seul tiret, par ex. -vkp. Les options qui prennent des arguments (obligatoires ou facultatifs) peuvent apparaître à la fin d'un tel cluster, par ex. -vkpf a.tar.
Le style d'option de style traditionnel , celui sans tirets :
Dans le style traditionnel, le premier argument est un groupe de lettres d'option et tous les arguments suivants fournissent des arguments aux options qui en ont besoin. Les arguments sont lus dans le même ordre que les lettres d'option. Tous les mots de ligne de commande qui restent après le traitement de toutes les options sont traités comme des arguments non facultatifs :noms de fichier ou de membre d'archive.
Comme vous pouvez le voir, le style UNIX ou short-option attend des arguments pour les options directement après l'option.
Alors que le style d'option de style traditionnel attend un bloc d'options et des arguments appropriés pour les options dans le bon ordre.