Le 08/09/2023 à 22:33, peterpan31 (via linux-31 Mailing List) a écrit :
Je fais ceci et ça roule :
sed -i.bak "s!^\(DefaultVolume \+\)[0-9]\+\$!\1${Volume}!" "$CONF"
Vraiment ? Tu as de la chance car cette expression illisible est un piège à con, elle ne fonctionne pas en shell bash interactif car ! est interprété comme rappel de commande de l'historique.
Pourquoi ne pas plutôt utiliser une commande plus sûre et plus lisible comme celle-ci ? $Volume peut contenir des / ?
sed -E -i.bak "s/^(DefaultVolume +)[0-9]+$/\1${Volume}/" "$CONF"