2012-02-19 20 views
1

私はantビルドからシェルスクリプトを実行したいと思いますが(execタスクが実行するようですが)、このスクリプトは起動するantとは異なるユーザーから実行する必要があります。これを行う方法はありますか?別のユーザーとしてのAnt execタスク

答えて

2

sshsexecタスクを使用できます。ローカルまたはリモートマシンに接続:

<sshexec host="localhost" 
    username="dude" 
    password="yo" 
    command="touch somefile"/> 

このタスクは、ANTのlibにインストールするオプションjsch.jarが必要になります。

パスワードを設定すると、パスワードなしのログインが可能になります。

2

sudoを使用して実際のスクリプトを実行するスクリプトをantから実行できませんでしたか?コマンドラインからパスワードを渡す方法については、How to pass the password to su/sudo/ssh without overriding the TTY?を参照してください。

+0

私はこれをbash(デフォルト端末)を使って試してみました。しかし、ANTはこのトリックを実行できないようで、パスワードを読み取れないようです。 [exec] [exec]パスワード: [exec]申し訳ありません、もう一度やり直してください。 [exec]パスワード: [exec]申し訳ありませんが、もう一度やり直してください。 [exec]パスワード: [exec]申し訳ありませんが、もう一度やり直してください。 –

関連する問題