Ist es in bash -x
möglich, einzelne Befehle vom Echo auszunehmen, wenn sie mit der Option ausgeführt werden?
Ich versuche, die Ausgabe so ordentlich wie möglich zu gestalten, daher führe ich bestimmte Teile meines Skripts in einer Subshell mit aus set +x
. Die Zeile set +x
selbst wird jedoch weiterhin wiederholt und fügt der Ausgabe keine wertvollen Informationen hinzu.
Ich erinnere mich, dass in den schlechten alten .bat
Zeiten, als ich mit lief echo on
, einzelne Zeilen ausgenommen werden konnten, indem man sie mit a begann @
. Gibt es ein Äquivalent in 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
Wenn Sie das oben genannte ausführen, lautet die Ausgabe:
+ 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