Bitte ertragen Sie mit mir, wenn meine Terminologie oder Syntax ist weniger als stellar (noch lernen). Ich habe derzeit ein einfaches Bash-Skript, das die Argumente des Befehls überprüft und Dateinamen mit passendem Text ausgibt. Dieser Teil meines Skripts funktioniert ordnungsgemäß über einen Befehl grep und piped an Xargs für die ordnungsgemäße Formatierung.BASH speichern stdout in neue Datei bei der Ausführung
Beim Ausführen des Skripts, ich durchlaufe eine einfache Schleife, um zu überprüfen, ob der Wert null ist und dann zum Ausführen meiner Variablen/Suche wenn nicht.
Meine Frage ist: Ist es möglich, dieses Skript über stdout ausgeben und auch eine neue Datei jedes Mal speichern, wenn es mit der Benutzereingabe und Datum/Uhrzeit ausgeführt wird? (aber nicht überschreiben) EX: report-bob-0729161500.rpt
Ich sah die gleichen anderen Vorschläge zu Tee mit dem Befehl zu verwenden, aber ich habe versucht, es in das Skript zu arbeiten. In ähnlicher Weise wurde in einem anderen Vorschlag angegeben, exec>> (tee -i logfile.txt) zu verwenden, aber ich bin mir nicht sicher, wie man das Datum/die Zeit und die $ 1-Eingabe bei jeder Ausführung des Skripts korrekt in neue Dateien einfügt.
Hilfe oder empfohlene Ressourcen?
Vielen Dank.
EDIT: Ich habe versucht, einfach die Echo-Anweisungen an den Tee-Befehl, die funktioniert. Ich bin jedoch immer noch neugierig, ob jemand andere Vorschläge hat, um diese Aufgabe mit alternativen Methoden zu lösen. Vielen Dank.
Mit Echo-Anweisungen geleitet abschlagen: (? Anhängen mit gegebenenfalls)
SEARCH=`[search_variable]`
DATE=`date +"%m%d%y%k%M"`
if [ -z "$SEARCH" ]
then
echo "$1 not found."
else
echo -e "REPORT LISTING\n\n" | tee tps-list-$1-$DATE.rpt
echo "$SEARCH" | tee tps-list-$1-$DATE.rpt
fi
Ehrlich gesagt, ich bin mir nicht sicher, der beste Weg, um dies zu erreichen, also der Grund, warum ich die beiden Vorschläge mit Tee enthalten. Ich weiß, dass ich es innerhalb des Skripts haben möchte, aber das Umleiten jeder Zeile scheint redundant zu sein. Ich hatte auf einige Vorschläge oder Ressourcen gehofft, die mehr Licht auf die Verwendung von tee innerhalb des Skripts oder auf einen anderen mir unbekannten Befehl werfen könnten, der neue Dateien erstellen würde (keine einzige Protokolldatei anhängen). – NewBashUser226