Script und Ausgang ist als unten:-T-Befehl nicht wie erwartet funktioniert (mit Lese- und Echo)
Script:
#!/bin/bash
#tee_with_read.sh
function tee_test()
{
echo "***This should be printed first but it is not***"
read -r -p "Enter input : "
echo "You entered : $REPLY"
}
tee_test | tee -a logfile
Ausgang:
$ ./tee_with_read.sh
Enter input : ***This should be printed first, but it is not***
"My Input"
You entered : "My Input"
Ich versuche zu anhängen Ausgabe in die Logdatei. Aber wie Sie in output sehen können, scheint es, als ob erster Lesevorgang ausgeführt wird und dann Echo, das nicht wie erwartet ist.
Ich benutze Git Bash Version 3.1.23 auf Windows 10. Da named Pipe in dieser Version nicht verfügbar ist, kann ich Named Pipe für Protokollzwecke nicht verwenden.
'read' auf stderr seine Aufforderung anzeigt. Ihr 'Echo' wird auf der Standardausgabe angezeigt. – bishop