]> piware.de Git - bin.git/commitdiff
shellpresent: Keep tty for executed commands
authorMartin Pitt <martin@piware.de>
Mon, 28 Sep 2026 09:56:42 +0000 (11:56 +0200)
committerMartin Pitt <martin@piware.de>
Mon, 28 Sep 2026 09:56:42 +0000 (11:56 +0200)
shellpresent

index b0758f79f7ec1922d6ed9d0c12f3a41eb65533dd..fcf1ba073197f6c19342dd2b6e98fea7dead3cf8 100755 (executable)
@@ -39,7 +39,7 @@ fi
 clear
 echo -en "\e[${PROMPT}m\$\e[${CMD}m "
 
-while read line; do
+while IFS= read -r line <&3; do
     # paragraph clears screen
     if [ -z "$line" ]; then
        clear
@@ -58,9 +58,9 @@ while read line; do
 
     # execute command
     echo -n "$line"
-    read < /dev/tty
+    read
     echo -ne "\e[${OUTPUT}m"
-    eval "$line"
+    eval "$line" 3<&-
     echo -en "\n\e[${PROMPT}m\$\e[${CMD}m "
-    read -s < /dev/tty
-done < "$1"
+    read -s
+done 3< "$1"