Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash “是”命令在提示下打印空值_Bash - Fatal编程技术网

Bash “是”命令在提示下打印空值

Bash “是”命令在提示下打印空值,bash,Bash,我必须将远程主机作为数据源添加到RHEL服务器,在连接时,它会询问我是否要信任主机的证书。我尝试使用yes命令,但是在它询问这个问题的提示下,只打印null,并且命令退出 I输入:yes |数据源添加,输出为 Do you want to trust this certificate(y/n) null # datasourceadd命令是内部生成的。这可能与yes的行为有关吗?您的datasource程序必须从终端读取y,因此您需要让它相信其标准输入是终端。您可以使用script-c完成此

我必须将远程主机作为数据源添加到RHEL服务器,在连接时,它会询问我是否要信任主机的证书。我尝试使用yes命令,但是在它询问这个问题的提示下,只打印null,并且命令退出

I输入:
yes |数据源添加
,输出为

Do you want to trust this certificate(y/n) 
null
#

datasourceadd
命令是内部生成的。这可能与
yes
的行为有关吗?

您的
datasource
程序必须从终端读取
y
,因此您需要让它相信其标准输入是终端。您可以使用
script-c
完成此操作。例如:

echo y | script -c 'datasource add <hostname>' /dev/null
echo y | script-c'datasource add'/dev/null

/dev/null
用于停止
脚本
将对话框保存到任何文件。

您的
数据源
程序必须从终端读取
y
,因此您需要让它相信其标准输入是终端。您可以使用
script-c
完成此操作。例如:

echo y | script -c 'datasource add <hostname>' /dev/null
echo y | script-c'datasource add'/dev/null

/dev/null
用于停止
脚本
将对话框保存到任何文件。

的行为与此不同。这是
datasource
命令,其行为类似于此并打印空值。您必须找出原因,我们不知道该命令是如何工作的。如果键入
y
并按enter键,通常会发生什么情况?如果手动键入y,效果很好。尝试发送单个
y
,而不是多个:
echo'y';datasource add
echo y会导致相同的问题。它打印null并退出。
yes
的行为与此不同。这是
datasource
命令,其行为类似于此并打印空值。您必须找出原因,我们不知道该命令是如何工作的。如果键入
y
并按enter键,通常会发生什么情况?如果手动键入y,效果很好。尝试发送单个
y
,而不是多个:
echo'y';datasource add
echo y会导致相同的问题。它打印null并退出。