gpt4 book ai didi

java - 如何使用进程构建器读取 read shell 命令的输入消息

转载 作者:行者123 更新时间:2023-11-30 11:30:25 26 4
gpt4 key购买 nike

我正在尝试使用进程构建器执行 shell 脚本。 shell 脚本使用“读取”shell 命令。但是当我检查 shell 脚本的输出流时,与“读取”命令关联的输入消息丢失了。shell脚本如下:

    #!/bin/bash
# script.sh
# This scripts has an input argument
echo Hello World
read -p "Enter something: " val1
echo First Name: $val1
read -p "Enter something: " val2
echo Last Name: $val2
echo $val1 $val2 invoked $1
echo $1 "completed successfully"

当我用命令手动运行这个脚本时

    ./script.sh install

终端输出如下:

    Hello World
Enter something: albin
First Name: albin
Enter something: suresh
Last Name: suresh
albin suresh invoked install
install completed successfully

但是当我使用进程构建器运行相同的命令时,输出中缺少“输入内容”命令。我得到的输出如下:

    Hello World
First Name: albin
Last Name: suresh
albin suresh invoked install
install completed successfully

为什么会发生这种情况,那些“输入内容:”消息会发送到哪个流??

最佳答案

我尝试在 google 上搜索 bash read 命令并得到了这个链接:http://ss64.com/bash/read.html

-p prompt : Display prompt, without a trailing newline, before attempting to read any input. The prompt is displayed only if input is coming from a terminal.

显然,如果输入来自非终端,如您的示例提示中未显示。

关于java - 如何使用进程构建器读取 read shell 命令的输入消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17805161/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com