アプリケーションを開き、1行にコマンドを入力します。

アプリケーションを開き、1行にコマンドを入力します。

C言語でコマンドラインアプリケーションを開発しました。アプリケーションには情報を出力する特別なキーワードがあります。現在は、コマンドを実行してアプリケーションにログインし、コマンドを実行して出力を取得し、最後にアプリケーションを終了する必要があります。

3行を1つにまとめる方法はありますか?例えば、ログイン、命令入力、ログアウト順に?次の例に示すように、1行にすべての操作を実行できる場合は、すべての手順を手動で入力する必要はありません。

./application -login [email protected]
> getstats
> exit    
./application -login [email protected]
> getstats
> exit
etc...

私が望むものは次のとおりです...

./application -login [email protected] && getstats && exit

もちろん、&&は各コマンドを一度に1つずつ実行するため、私が探しているものではありません。 getstatsとシャットダウンは.application内で実行されませんが、終了した後...

どんなヒントでもいいでしょう。

答え1

このアプリが適切な場合標準入力、次のように動作します。

printf 'getstats\nexit\n' | ./application -login [email protected]

それでも機能しない場合は、expectスクリプトを試してみてください。例を見ることができますここ

関連情報