Bash 拉威尔特使和巴什提示
我正在使用特使来配置远程服务器。配置是通过从私有repo中提取bash脚本,然后执行它来完成的 bash脚本会询问一些确认信息,比如yes/no(使用bash“read-p”):当我连接到远程服务器时,它会按预期工作。。。脚本将等待用户输入 相反,特使似乎忽视了任何提示。这是一种预期的行为吗Bash 拉威尔特使和巴什提示,bash,laravel,laravel-envoy,Bash,Laravel,Laravel Envoy,我正在使用特使来配置远程服务器。配置是通过从私有repo中提取bash脚本,然后执行它来完成的 bash脚本会询问一些确认信息,比如yes/no(使用bash“read-p”):当我连接到远程服务器时,它会按预期工作。。。脚本将等待用户输入 相反,特使似乎忽视了任何提示。这是一种预期的行为吗 有什么解决办法吗?是的,这是意料之中的。没有任何东西可供读取读取,因此它不会 你有几个选择 当没有终端提示时,重写脚本以使用配置文件 使用类似于[-t0]的方法测试标准输入是否是终端,并加载带有默认值的配置
有什么解决办法吗?是的,这是意料之中的。没有任何东西可供
读取
读取,因此它不会
你有几个选择
[-t0]
的方法测试标准输入是否是终端,并加载带有默认值的配置文件。最简单的方法就是创建一个包含适当变量赋值的文件,然后将其源代码。默认值.sh
或其他任何值。如果您首先获取默认值,甚至不需要进行-t
测试,因为用户输入的任何内容都会超过默认值
printf'answer 1\nanswer 2\n'|/script.sh
或/script.sh)通过管道/文件提供您的脚本输入。谢谢您的解释Etan。您能提供第一个选项的示例吗?