在shell中,如何将comand2作为comand1的continue
我有一个shell文件,我想像这样使用它在shell中,如何将comand2作为comand1的continue,shell,Shell,我有一个shell文件,我想像这样使用它 ./flow.sh connect localhost login user password 连接成功后,将等待下一个命令, 然后我将输入第二个命令,如 deploymenet xxxx.xml 现在我的问题是如何将2命令转换成1命令行,因为我想在ruby文件中调用它。 我在ruby中调用shell的方式类似于“%x[command1;command2]”。但它会出错,因为comand2将被视为shell命令,而不是cammand1之后的输入 如何
./flow.sh connect localhost login user password
连接成功后,将等待下一个命令,
然后我将输入第二个命令,如
deploymenet xxxx.xml
现在我的问题是如何将2命令转换成1命令行,因为我想在ruby文件中调用它。
我在ruby中调用shell的方式类似于“%x[command1;command2]”。但它会出错,因为comand2将被视为shell命令,而不是cammand1之后的输入
如何解决这个问题?谢谢你的帮助。试试这个:
echo 'deploymenet xxxx.xml' | ./flow.sh connect localhost login user password
您是否尝试将其传送到进程对象的stdin?@Ignacio Vazquez Abrams您的意思是:./flow.sh connect localhost login user passwordRegd您得到的错误:如果手动执行,它是否工作?输入
/flow.sh
command&在提示符下,手动输入deployment….
command。@anishsane是的,它工作正常,手动输入没有错误最坏的情况下,请尝试expect
command。获取错误:com.tool.ActivitRest.main(ActivitRest.java:117)上的线程“main”java.lang.NullPointerException中出现异常,但是,在数据库中部署xml是成功的,而不知道flow.sh
中有什么内容,我对此无能为力。实际上,这很简单,只需调用一些jar。我会自己尝试解决这个问题。谢谢你的帮助。