En bash, lors de l'exécution avec l' -xoption, est-il possible d'exempter les commandes individuelles de l'écho?
J'essaie de rendre la sortie aussi nette que possible, donc j'exécute certaines parties de mon script en sous-shell avec set +x. Cependant, la ligne set +xelle-même est toujours en écho et n'ajoute aucune information précieuse à la sortie.
Je me souviens du mauvais vieux .battemps, lors de l'exécution avec echo on, les lignes individuelles pouvaient être exemptées en les commençant par un @. Y a-t-il un équivalent en bash?
#!/bin/bash -x
function i_know_what_this_does() {
(
set +x
echo do stuff
)
}
echo the next-next line still echoes 'set +x', is that avoidable?
i_know_what_this_does
echo and we are back and echoing is back on
Lors de l'exécution de ce qui précède, la sortie est:
+ echo the next-next line still echoes 'set +x,' is that 'avoidable?'
the next-next line still echoes set +x, is that avoidable?
+ i_know_what_this_does
+ set +x
do stuff
+ echo and we are back and echoing is back on
and we are back and echoing is back on