1. バックグラウンド実行 一般的に、Linux 上のプログラムは .sh ファイル (./sh ファイル) を実行して実行されます。現在の CMD ウィンドウの動作に影響を与えず、バックグラウンドで実行する必要がある場合はどうすればよいでしょうか。 現時点では、これを実現するには nohup コマンドと & コマンドを使用する必要があります。 nohup java -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -jar test.jar $1 $2 $3 & (1)ノフープ コマンドが中断されることなく実行されることを示すために、コマンドの先頭に追加します。 (2)& コマンドの終了をロードし、このコマンドがバックグラウンドで実行されることを示します。 2. バックグラウンドで実行されているコマンドを表示する これを表示するには、ps と jobs という 2 つのコマンドがあります。違いは、ジョブは現在のターミナルのバックグラウンドで実行されたタスクのみを表示でき、ターミナルを変更すると表示されなくなることです。 ps コマンドは、瞬間的なプロセスのダイナミクスを表示するのに適しており、他の端末のタスクを表示できます。 (1)仕事 [root@localhost test]# ジョブ [1]- nohup java -Dfile.encoding=UTF-8 -Dname=Runtime-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test.jar $1 $2 $3 & を実行 (作業ディレクトリ: /home/ams/ams-server/test) [2]+ nohup java -Dfile.encoding=UTF-8 -Dname=Container-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test1.jar $1 $2 $3 & を実行しています 2 つのバックグラウンド プロセスが次々に開始され、ジョブを使用した後、両方が表示されました。 「+」は最新のタスク(現在のタスク)を表し、「-」は前のタスクを表します。 jobs コマンドは、現在のコマンド ラインで nohup と & が使用されている場合にのみこれを表示できます。これらを .sh スクリプトに記述してスクリプトを実行すると、表示されません。 たとえば、次のスクリプトを実行すると、ジョブは表示されません。 #!/bin/bash nohup java -Dfile.encoding=UTF-8 -Dname=ランタイム名 -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test.jar $1 $2 $3 & (2)psコマンド [root@localhost テスト]# ps -aux|grep java root 21219 0.3 3.9 6258172 148900 ポイント/0 Sl 10:08 0:02 java -Dfile.encoding=UTF-8 -Dname=Runtime-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test.jar ルート 21662 0.2 3.0 5041008 116648 ポイント/0 Sl 10:10 0:01 java -Dfile.encoding=UTF-8 -Dname=Container-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test1.jar ルート 23761 0.0 0.0 112664 972 ポイント/0 S+ 10:19 0:00 grep --color=auto java これはプロセスを表示するためによく使用されるコマンドなので、これ以上は説明しません。 a: すべてのプログラムを表示 u: ユーザーベースの形式で表示 x: 端末に関係なくすべてのプログラムを表示 3. 現在バックグラウンドで実行中のプログラムを閉じる キルコマンド (1)jobsコマンドでjobnumを確認し、kill %jobnumを実行します。 (2)psコマンドでプロセスID PIDを表示し、kill %PIDを実行する。 フォアグラウンド プロセスの場合は、Ctrl + c を実行して終了します。 4. フォアグラウンドプロセスとバックグラウンドプロセスの切り替えと制御 (1)fgコマンド バックグラウンドのコマンドをフォアグラウンドに移動して実行を継続します バックグラウンドで複数のコマンドがある場合は、まず jobs を使用してジョブ番号を表示し、次に fg %jobnum を使用して選択したコマンドを呼び出すことができます。 (2)Ctrl + zコマンド フォアグラウンドで実行中のコマンドをバックグラウンドに移し、一時停止状態にする (3)bgコマンド バックグラウンドで一時停止されているコマンドを、バックグラウンドで実行し続けるコマンドに変更します。 バックグラウンドで複数のコマンドがある場合は、まず jobs を使用してジョブ番号を表示し、次に bg %jobnum を使用して選択したコマンドを呼び出して実行を継続できます。 [root@localhost test]# ジョブ [1]- nohup java -Dfile.encoding=UTF-8 -Dname=Runtime-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test.jar $1 $2 $3 & を実行 (作業ディレクトリ: /home/test) [2]+ nohup java -Dfile.encoding=UTF-8 -Dname=Container-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test1.jar $1 $2 $3 & を実行しています // fg を使用した後、タスク 2 をフォアグラウンドに移動します [root@localhost test]# fg 2 nohup java -Dfile.encoding=UTF-8 -Dname=コンテナ名 -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test1.jar $1 $2 $3 ^Z // Ctrl+Z を押した後、タスク 2 をバックグラウンドで実行して一時停止します [2]+ 停止しました nohup java -Dfile.encoding=UTF-8 -Dname=Container-Name -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test1.jar $1 $2 $3 // bg を使用した後、タスク 2 の操作をアクティブ化します [root@localhost test]# bg 2 [2]+ nohup java -Dfile.encoding=UTF-8 -Dname=コンテナ名 -server -Xms128M -Xmx512M -XX:MetaspaceSize=128M -XX:MaxMetaspaceSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled -jar test1.jar $1 $2 $3 & 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: WeChatミニプログラム開発のためのコンポーネント設計仕様
>>: WeChatミニプログラムの開発をスピードアップするためのヒント
準備: 192.168.16.128 192.168.16.129 2 台の仮想マシン。 Nginx...
DOCTYPE 宣言 作成するすべてのページの先頭に、ドキュメント宣言が必要です。はい、そうでしょう...
パート 1 SSH ポート転送の概要カフェで無料Wi-Fiを利用しているとき、誰かがあなたのパスワー...
コードをコピーコードは次のとおりです。 <html xmlns="http://ww...
背景一時テーブルスペースは、データベースのソート操作を管理し、一時テーブルや中間ソート結果などの一時...
1.Docer CEをインストールして使用するこの記事では、CentOS 7 を例に Docker ...
1. 問題下図のような表があり、結果値がreference_high値より大きいデータを見つける必要...
<META http-equiv="Page-Enter" CONTENT...
目次標準コミットメッセージの重要性コミットするコミットリント依存関係をインストールする.commit...
主な違いは次のとおりです。 1. MySQL はデフォルトで MyISAM を使用します。 2. M...
Nginx Rewriteの使用シナリオ1. URL アドレスジャンプ。たとえば、ユーザーが pm....
<br />原文: http://andymao.com/andy/post/104.h...
目次1. 簡単な紹介2. 間隔を設定する2.1 説明2.2 パラメータ2.3 戻り値2.4 使用法3...
目次概要1. 必要なソフトウェア環境を開発する1) VSコードのインストール2) ノード開発環境をイ...
RDF と OWL は、2 つの重要なセマンティック ウェブ テクノロジーです。 RDF と OWL...