2

Fキーのキーストロークをパイピングする必要がある短いbashハックを書き込もうとしています。基本的に私がやろうとしていることは次のとおりです。

(echo "1"; "for x in 1..9; do echo "123<F1>34<F3>"; done; echo "<F1>")|./program

その#のFキーはどこですか

これは可能ですか?もしそうなら、誰かが私にドキュメントか何かを教えてもらえますか

4

2 に答える 2

2

端末によっては、ファンクション キーは単なる一連の文字です。それらが何であるかを見ることができますcat

$ cat
^[OP
^[OQ
^[OR

F1、 、F2F3を順番に叩いてます。したがって、それらをプログラムにエコーするには、それらの制御コードをエコーするだけで (最初のコードにctrl-があることに注意してESCください)、すべての設定が完了しているはずです。

于 2012-04-18T20:02:41.963 に答える
0

zigdon の回答を拡張するにtputは、端末に適したシーケンスを生成するために使用できます。

f1=$(tput kf1)
f2=$(tput kf2)
# ...
(echo 1; for x in {1..9}; do echo "123${f1}34$f3"; done; echo "$f1") | ./program

「kf1」および「kf2」という名前は、それぞれ F1 キーおよび F2 キーのterminfo 機能です。

于 2012-04-18T20:51:53.923 に答える