GNU/Linux >> Linux の 問題 >  >> Linux

LinuxのNohupコマンド

Linuxシステムのシェルを終了すると、通常、実行中のすべてのプロセスが終了するか、ハングアップします。では、シェル/ターミナルを出てもプロセスを実行し続けたい場合はどうしますか?ここでnohupコマンド 入ってくる。

Nohupコマンド

Nohup、ハングアップなしの略は、シェルまたはターミナルを終了した後もプロセスを実行し続けるLinuxシステムのコマンドです。

Nohupは、プロセスまたはジョブがSIGHUP(Signal Hang UP)シグナルを受信するのを防ぎます。これは、端末を閉じるか終了するときにプロセスに送信される信号です。このガイドでは、nohupコマンドを確認し、その使用方法を示します。

Nohupコマンド構文

Nohupコマンドの構文は次のとおりです;

nohup command arguments

または

nohup options

コマンドがどのように機能するか見てみましょう

Nohupのバージョンを確認する

以下の構文を使用して、Nohupのバージョンを確認することから始めることができます

nohup --version

出力

Nohupを使用してプロセスを開始する

プロセス/ジョブを実行し続けたい場合は、コマンドの前にnohupを付けてください 以下に示すように。ジョブは引き続きシェルで実行され、シェルまたはターミナルを終了しても強制終了されません。

nohup ./hello.sh 

出力

上記の出力から、コマンドの出力はnohup.outに保存されています。 この実行を確認するには、

cat nohup.out

出力

さらに、図のように出力を別のファイルにリダイレクトすることを選択できます

nohup ./hello.sh > output.txt

もう一度、ファイルの実行を表示するには

cat output.txt

出力

ファイルにリダイレクトし、標準エラーと出力にリダイレクトするには、 > filename 2>&1 を使用します 示されている属性

nohup ./hello.sh > myoutput.txt >2&1 

出力

Nohupを使用してバックグラウンドでプロセスを開始する

バックグラウンドでプロセスを開始するには、&を使用します コマンドの最後にある記号。この例では、google.comにpingを送信してバックグラウンドに送信しています。

nohup ping google.com &

出力

シェルを再開するときにプロセスを確認するには、pgrep を使用します 示されているコマンド

pgrep -a ping

出力

実行中のプロセスを停止または強制終了する場合は、killを使用してください 示されているように、コマンドの後にプロセスIDが続きます

kill 2565

出力

概要

  1. nohupコマンドを使用して実行されるすべてのプロセスは、シェルを終了してもSIGHUP信号を無視します。
  2. nohupコマンドを使用してジョブを開始または実行すると、ユーザーはstdinを使用できなくなります。
  3. デフォルトでは、nohup.out stdoutおよびstderrのデフォルトファイルとして使用されます。

Linux
  1. Linuxmvコマンド

  2. Linuxduコマンド

  3. Linuxipコマンド

  1. Linuxnohupコマンドの使用方法

  2. Linuxcdコマンド

  3. Linux の nohup コマンド オプション

  1. Linuxifconfigコマンド

  2. Linuxタイムコマンド

  3. LinuxでのPingコマンド