0

サーバーのいくつかのステップを自動化するための販売スクリプトを作成しています。最初にユーザーを切り替える必要があり、次にサーバーが選択するエリアを提供し、次にエリアに1を選択する必要があり、次に4つのオプションを提供するperlプログラムlmsysconを実行する必要があります3 を選択する必要があります。次に、再び2つのオプションが表示され、デフォルトで2番目を選択する必要があります。これが私のスクリプトです

su poletst -c ". /try/lamtst/.profile Test"
expect -c 'spawn lmsyscon; send 3\r"; interact'
expect -c 'send "1\r"; interact'

問題は、最後の行が実行されておらず、デフォルトで 2 が選択されていないことです

4

1 に答える 1

0

うーん...これは複雑すぎます。さらに、suコマンドは次のexpect呼び出しには影響しません (これらは現在のユーザーとして実行されます)。

代わりに、expect3 つのステップすべてを実行するスクリプトを作成します。つまり、ユーザーを変更して何かを実行します。これは簡単です。

于 2013-09-20T20:29:46.457 に答える