- De nombreux utilitaires en ligne de commande prennent en charge les options au format court (
-f) et au format long (--force)
- Le format court est destiné à un usage interactif ; dans les scripts, il est recommandé d’utiliser le format long
- Par exemple, dans le terminal, on saisit
$ git switch -c my-new-branch
- Dans un script de release, on l’écrit ainsi :
try shell.exec("git fetch origin --quiet", .{});
try shell.exec("git switch --create release-{today} origin/main", .{ .today = stdx.DateUTC.now() }, );
- Les options au format long sont bien plus explicites pour le lecteur
1 commentaires
Commentaire Hacker News
Je préfère les options longues, mais lorsqu’il faut invoquer des commandes POSIX de façon portable, les options courtes sont le seul choix possible. POSIX ne spécifie pas d’options longues
diffgrep, utiliser quelque chose commelibpcrepeut être plus efficacegit,hg,rg,ag, il est raisonnable d’utiliser des options longuesIl ne faut pas mélanger l’interpolation de chaînes et l’exécution de commandes
execv(2),execvp(2), etc.Je suis d’accord sur le fait qu’il faut utiliser des options longues, mais il faut tenir compte de la portabilité
Il ne faut pas oublier d’utiliser
--après toutes les options et avant les arguments dynamiquesIl faut vérifier avant d’invoquer une commande que sa longueur ne dépasse pas
ARG_MAXgrep --ignore-case --files-with-matches -- "hello" *.cCMD="grep --ignore-case --files-with-matches -- \"hello\" *.c"ARG_MAX=$(getconf ARG_MAX)CMD_LEN=${#CMD}if (( CMD_LEN > ARG_MAX )); thenecho "Error: Command length ($CMD_LEN) exceeds ARG_MAX ($ARG_MAX)." >&2exit 1fieval "$CMD"# attention, évalue les noms de fichiersJe suis d’accord avec cette approche. Un autre avantage est qu’il devient plus facile de faire un
grepdans la page de man pour retrouver ce que fait une optionSi vous voulez rendre votre script portable vers d’autres systèmes POSIX, vous devrez peut-être utiliser des options courtes
Il faut mettre chaque option sur une ligne séparée pour faciliter le suivi et le
git blameC’est l’une des règles de base quand on écrit des scripts. S’il est possible d’utiliser des options longues, il faut le faire
Les options au format long sont bien plus explicites pour le lecteur