私はDebianでシンプルなGUIベースのプログラムを起動する簡単なスクリプトを作成したいと思います(ncursesスタイル、シェルのテキストベースのグラフィックを考えてみてください)。サーバーへのSSHアクセスのみがあるため、標準マクロやその他の操作を実行できません。
入力は常に同じです。プログラムを起動し、プログラムコンテキスト内で「enter」キー入力、「R」キー入力、および「F7」キー入力を送信するために必要です。
私はしばらくこの問題を解決するために努力してきましたが、何も理解できないようです。 Bashスクリプトでこれを行う方法はありますか?
ありがとうございます。良い一日になろう
答え1
これは最近の質問と非常に似ているようです。
https://stackoverflow.com/questions/11596059/how-do-i-read-any-one-key-in-bash/11596145#11596145
read -n 1 x; while read -n 1 -t .1 y; do x="$x$y"; done
しかし、このスレッドで述べたように、ダイアログボックスや同様のスクリプトメニュープログラムを使用する方が良いでしょう。
それとも...このキーストロークを送信しますか?到着プログラム?もしそうなら、予想を使うことをお勧めします。
答え2
これを行うことができます:
[root@w4n-dl-c60-64-yannick ~]# cat test.sh
#!/bin/bash
echo "The year is: $var_year"
read var_year
echo -n "Enter your name and press [ENTER]: "
read var_name
echo "Your name is: $var_name"
echo "You are $((2012 - $var_year)) years old!"
echo "You can go on!...."
read var_con
[root@w4n-dl-c60-64-yannick ~]# ./test.sh
The year is:
1980
Enter your name and press [ENTER]: Yannick
Your name is: Yannick
You are 32 years old!
You can go on!....
[root@w4n-dl-c60-64-yannick ~]#