Hello,

25 mars 2021, 09:02 de m...@unistra.fr:

>> Comme indiqué de manière très détaillée sur 
>> https://mywiki.wooledge.org/BashFAQ/050
>>
> (désolé c'est en anglais), stocker des commandes dans des variables est très 
> hasardeux.
>
> je ne lit plus jamais qu'en diagonale toute litterature spécifique à
> bash mais oui: les choses sont compliquées voir impossibles dans une
> chaine. par contre ...
>
>> La façon la moins risquée est de passer par un tableau (d'ailleurs
>> t'avais évoqué l'idée dans ton message initial).
>>
>
> non!
> [...]
> ensuite: la façon la moins risquée s'appelle une fonction et c'est même
> fait pour. ca permet de surcroit de profiter
>
> * de la localisation des variables dans le contexte de la fonction.
> * du paramétrage d'une valeur par défaut
>
Je parlais du cas où l'on souhaiterait absolument passer par une variable. Vaut 
mieux le tableau que la chaîne.
Nous sommes en phase sur la fonction.

> autre manière de faire pour éviter le quoting hell: xargs
> https://pubs.opengroup.org/onlinepubs/9699919799/utilities/xargs.html
>
> date=tomorrow
>
> # des trucs ...
>
> <<. xargs -d'\n' date
> -d ${date:--1day}
> +%A %d %B
> .
>
> xargs prend aussi un fichier, du coup tu peux composer ta commande
> petit à petit
>
> exec 9>/tmp/mydate
> >&9 echo "-d ${date:--1day}"
> >&9 echo '+%A %d %B'
> exec 9>&-
> xargs -a /tmp/mydate -d'\n' date
>
Merci, ça m'a fait réviser xargs et les redirections/descripteurs de fichiers 
non standards ;)

25 mars 2021, 19:14 de k6dedi...@free.fr:

> Pour info : tutorial bash
> http://aral.iut-rodez.fr/fr/sanchis/enseignement/bash/
>
Oui, ce cours est vraiment top je trouve.
Je l'avais massivement utilisé à mes débuts en bash !

Bonne fin de journée
l0f4r0

Répondre à