0

ユーザー入力を要求するinput.shシェルスクリプトがありますが、正常に動作します!!. 今、私はantを介してinput.shを呼び出したいのですが、それを行うことはできますが、入力をシェルスクリプトに渡すことができません。私は何かを逃した?以下は、build.xml と input.sh の抜粋と実行結果です。

入力.sh

#!/bin/bash

echo "enter the Organization name"
read Orgname
echo "Orgname is : $Orgname"
sed "s/000/$Orgname/g" Final.sql >> ExecuteID.sql
echo "Organization name has been replaced with $Orgname"

結果:

[root@krog2-rhel5-64 Work]# ./input.sh
enter the Organization name
**yak
Orgname is : yak
Organization name has been replaced with yak**

build.xml

<project name="Sample" default="automate">
<target name="automate">
<exec executable="/bin/bash">
<arg value="/root/test/Work/input.sh"/>
<arg value="/root/test/Work"/>
</exec>
</project>

結果:

[root@krog2-rhel5-64 Work]# ant
Buildfile: /root/test/Work/build.xml

automate:
     [exec] enter the Organization name
     [exec] **Orgname is :
     [exec] Organization name has been replaced with**

BUILD SUCCESSFUL
Total time: 0 seconds

この問題で何か助けていただければ幸いです!!

4

1 に答える 1

0

でを渡したい場合が$Orgnameありbuild.xmlます。

<project name="Sample" default="automate">   
  <target name="automate">
    <exec executable="/bin/bash">
      <arg value="echo 'yak' | /root/test/Work/input.sh"/>
    </exec>   
  </target> 
</project>
于 2013-06-24T18:04:56.313 に答える