ターミナル(xterm)を開いてbashを起動してプロンプトを表示している。この実行中のbashのPIDと、この端末に関連付けられているttyを知っているとします。このターミナルに全く触れない方法はありますか?ttyとpidの情報だけを使用して、この非常に実行中のbashにコマンドを実行するよう求めます。 Naively echo "command"> ttyは端末にコマンドを表示しますが、bashはそれをユーザー入力として受け取っていません。実行中のbash(対話型)に外部からコマンドを実行するように依頼する
2
A
答えて
4
TIOCSTI
ioctlを使用してください。 Cの例:
char* cmd="ls\n";
int fd = open (ptsname, O_RDWR);
while (*cmd)
{
ioctl(fd, TIOCSTI, cmd++);
}
0
は(2017)は、以下のスクリプトまたはコマンドラインから実用的である:
stty -echo; perl -le 'require "sys/ioctl.ph"; ioctl(STDIN, &TIOCSTI, $_) for split "", join " ", @ARGV ' `_cmds_` ;stty echo; _app_
あなたが最終アプリをドロップするとCMDSの出力が上に存在します(カーネル内で呼び出される)入力キュー、現在のコンソールシェル、またはコマンドラインで実行されているアプリケーションのいずれかに格納されます。 stty
は、スクリーンへの(全二重)エコーを停止するだけです。
注意:技術的には、これは明示的に「キー押しをシミュレート」していません。
関連する問題
- 1. Pythonスクリプトから外部対話型プログラムを実行する
- 2. Railsで外部結合を実行するように頼む
- 3. 対話型インタラクティブを実行中の例外
- 4. Antビルドスクリプトから対話型アプリケーションを実行するには?
- 5. Rubyから実行中のPowershellコマンドと外部Powershellコマンド
- 6. 対話型のPythonスクリプトをブラウザで実行するように変換する
- 7. PHPウェブページから対話型シェルプログラムを実行する方法
- 8. 外部コマンドを実行する
- 9. Javaサーブレットから外部コマンドをどのように実行しますか?
- 10. コマンド置換bashスクリプトの対話型コマンド
- 11. zookeeperのzkCli.shコマンドをbashから実行するには?
- 12. IntelliJ外部ツールからターミナルでコマンドを実行する
- 13. 対話型CLIプログラムのリモート実行
- 14. Powershell - 外部プログラムの実行中にスクリプトを中断する
- 15. Geoserver WPS実行依頼
- 16. WindowsコマンドプロンプトからRを対話的に実行する
- 17. 現在実行中のコマンドが完了した後にコマンドを実行するようにbashに指示できますか?
- 18. Echoコマンドを実行してから実行しますか? (makeのように)
- 19. Javaからの実行中のbashスクリプト
- 20. Javaからの対話型コマンドラインアプリケーションの実行
- 21. 実行Bashのコマンドは、PHP
- 22. コマンド実行中に 'PushSharp'
- 23. すべての着信メールに対してbashコマンドを実行する(Postfix)
- 24. Javaから外部アプリケーションを実行するか、BATファイルを実行する
- 25. Powershellリモートセッションの外部コマンド実行
- 26. gdbコマンドプロンプトから外部コマンドを実行するにはどうすればよいですか?
- 27. Pythonスクリプトにbashコマンドを実行
- 28. bashスクリプトで2つの実行中のコマンドを実行してください
- 29. rubyからリモートホスト上で対話型シェルプログラムを実行する方法
- 30. Python:* nixで実行中のプロセスのSTDIN/OUTと対話する