BASH:当读取用户输入时,Enter带来新行

Tha*_*guy 10 bash

我需要以下示例bash脚本,行为如下:

echo -e "Enter name: \c"
read U_IP_NAME
echo -e "You said your name is : $U_IP_NAME"
Run Code Online (Sandbox Code Playgroud)

这将输出到:

Enter name: Alok
You said your name is : Alok
Run Code Online (Sandbox Code Playgroud)

但我希望它是:

You said your name is : Alok
Run Code Online (Sandbox Code Playgroud)

有没有办法实现这个目标?

[解决方案:mouviciel]

mou*_*iel 12

您想将光标向上移动一行.这通过以下方式实现tput cuu1:

echo -e "Enter name: \c"
read U_IP_NAME

tput cuu1

echo -e "Your said your name is : $U_IP_NAME"
Run Code Online (Sandbox Code Playgroud)

有关man tput和的更多信息man terminfo.


use*_*own 8

read -p "Enter your uip-name: " U_IP_NAME
Run Code Online (Sandbox Code Playgroud)

-p用于提示