ある端末から別の端末へのプロセス開始

ある端末から別の端末へのプロセス開始

ある端末から別の端末に新しいプロセスやプログラムを起動する方法があるかどうか疑問に思います。

私は言う:それを実行する必要がありますgedit abc.txtが、それが私の現在のターミナルウィンドウをブロックしたくないとしましょう。

私が走ることができる方法はありませんか?編集者ある端末から別の端末ウィンドウに入りますか?それとも現在の端末をブロックせずにgeditを使用できますか?

答え1

次に実行するgedit

gedit file.txt &

&これにより、最終的にプロセスがバックグラウンドで実行され、現在の端末を再びインタラクティブに使用できるようになります。

答え2

次のコマンドを使用できます。

gedit abc.txt & disown

源泉

Bash シェルでは、 disown 組み込みコマンドを使用して、ジョブテーブルからジョブを削除したり、親シェルが SIGHUP シグナルを受信したときに SIGHUP シグナルが送信されないようにジョブを表示することができます。から)。

答え3

バックグラウンドで実行される機能を使用できます。

これを行うには、コマンドの最後に&を入れます。たとえば、

$ gedit example.txt &

 [1] 12642

バックグラウンドのすべてのプロセスを一覧表示するには、このjobコマンドを使用します。

 $ jobs

[1]+  Running                 gedit example.txt &

プロセスをフォアグラウンドに戻すには、次のfgコマンドを使用します。

$ fg %1

gedit example.txt

そのうち %1 はバックグラウンドの最初のプロセスを表します。 %xはxプロセスを表します。

関連情報