他のttyでプロセスを開始する

他のttyでプロセスを開始する

1時間くらいグーグルしても出てこない信じる実際、以前は誰もこの質問をしたことがありません…。

したがって、TTY1で実行されるスクリプトがあります。このスクリプトを使用してTTY2でランダムプログラムを起動するにはどうすればよいですか?

  • tty現在どのTTYが使用されているかを知らせることがわかりました。
  • writevt別のTTYに1行のテキストを書くことがわかりました。
  • chvtこれが現在表示されているTTYを変更することがわかりました。

したくない展示するTTY2。メインスクリプトが正常に実行され続けたいのですが、手動でTTY2に切り替えると、2番目のプログラムと対話できます。

ベストアンサー1

setsid sh -c 'exec command <> /dev/tty2 >&0 2>&1'

/dev/tty2他のものが別のTTY(この場合)を使用しない限り、この方法は機能します。これには、getty誰かがログインするのを待つ1つのプロセスが含まれます。 TTYから入力を読み取るためのいくつかのプロセスがあります。〜する予期しない結果が発生します。

setsid新しいセッションでコマンドを開始することを担当します。

出力改行にキャリッジリターンなどが追加されるように「料理モード」をオンにするなど、設定を正しく指定するには注意が必要ですcommandsttyonlcr

おすすめ記事