Unterdrücken `Satz -v` / `set -x` logging nur für eine einzelne Zeile in der bash

Ich Schreibe ein .sh-Skript wie dem folgenden:

echo script started
./some_command > output_file
echo script ended

Möchte ich die Ausgabe der folgenden:

script started   
./some_command > output_file   
script ended  

Ich habe versucht set -v, set +v aber es hat nicht richtig funktioniert,
gibt es etwas ähnlich @echo im batch -?

Dank

am Anfang Ihrer shell-Skript verwenden #!/bin/sh -x wird Dieser Ausgang wird bei jeder Ausführung
Ich wollte vorschlagen, die Sie verwenden standard-Fehler-in etwa so: echo script started >&2, dann führen Sie Ihr Skript mit myscript 2> /dev/null, aber das scheint nicht das zu sein, was Sie wollen.
ja, ich möchte die Ausgabe meiner Befehle, außer dem Befehl echo, sorry für die Verwirrung
Was Sie versuchen, zu tun, scheint nicht standard und Probleme anfällig.
Gib nicht so schnell auf und akzeptieren eine Antwort, die Sie nicht mögen... das Sie gerade gebucht dies 3 Stunden. Vielleicht den Titel ändern, weil das, was Sie wirklich wollen, zu tun zu sein scheint, drucken Sie die Befehle in ein bash-Skript, außer don ' T echo-das echo-Kommando zweimal...

InformationsquelleAutor Monster Hunter | 2013-09-25

Schreibe einen Kommentar