CentOS を使用していますが、以下の方法がわかりません。
- 現在実行中のバックグラウンド プロセス/ジョブのリストを表示します。
- プロセスをバックグラウンドで実行する方法。
- バックグラウンドのプロセスを停止する方法。
バックグラウンドで実行したいコマンドは次のようになります。
activator run
これまでのところ、このコマンド(バックグラウンドでプロセスを実行する)だけが見つかりました。
nohup activator run &
答え1
それはおそらく、主にシェルに依存しますbash(1)
。他のほとんどの最新のシェルは、同様の(または同一の)ジョブ制御機能を提供します。
- バックグラウンドでコマンドを開始するには、
command &
またはnohup command &
(ログアウトしてもコマンドを実行し続けたい場合)を実行します。 - 実行中のコマンドを停止するには
C-z
(ctrl-Z)、停止したコマンドをバックグラウンドにするには を実行しますbg
。 を使用すると、コマンドをフォアグラウンドに戻します。 は、何が停止しているか、またはバックグラウンドにあるかを示します。はジョブ番号 を強制終了し、(または単に) はそれをフォアグラウンドに戻します。 停止したジョブをバックグラウンドで開始するには、 (または単に) を使用します。fg
jobs
kill %k
k
fg %k
%k
k
bg %k
%k &
もう少しあります。
もう一つの非常に柔軟な方法は、 を使用することですscreen(1)
。マニュアル ページを確認してください。これを使用すると、コマンドを開始して切断し、後で別の端末 (またはネット上の別のマシン) から接続することができます。
答え2
あなたのアプローチはうまくいくはずです...
仕事を始めるnohup activator run &
何が実行されているか確認するjobs -l
で停止しますkill PID
(PIDは で取得できますps -ef | grep activator
)
私は個人的にはscreen
--http://linux.die.net/man/1/スクリーン
仕事を始めるscreen -d -m activator run
スクリーンセッションを確認するscreen -ls
screen -x
スクリーンセッションIDに続いてスクリーンウィンドウにアクセスして停止します。