'\" te .\" Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved. .\" Copyright 1989 AT&T .\" Portions Copyright (c) 1992, X/Open Company Limited All Rights Reserved .\" Sun Microsystems, Inc. gratefully acknowledges The Open Group for permission to reproduce portions of its copyrighted documentation. Original documentation from The Open Group can be obtained online at http://www.opengroup.org/bookstore/. .\" The Institute of Electrical and Electronics Engineers and The Open Group, have given us permission to reprint portions of their documentation. In the following statement, the phrase "this text" refers to portions of the system documentation. Portions of this text are reprinted and reproduced in electronic form in the Sun OS Reference Manual, from IEEE Std 1003.1, 2004 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6, Copyright (C) 2001-2004 by the Institute of Electrical and Electronics Engineers, Inc and The Open Group. In the event of any discrepancy between these versions and the original IEEE and The Open Group Standard, the original IEEE and The Open Group Standard is the referee document. The original Standard can be obtained online at http://www.opengroup.org/unix/online.html. This notice shall appear on any product containing this material. .TH nohup 1 "2012 年 2 月 7 日" "SunOS 5.11" "ユーザーコマンド" .SH 名前 nohup \- ハングアップおよび停止の影響を受けないコマンドの実行 .SH 形式 .LP .nf \fB/usr/bin/nohup\fR \fIcommand\fR [\fIargument\fR]... .fi .LP .nf \fB/usr/bin/nohup\fR \fB-p\fR [\fB-Fa\fR] \fIpid\fR [\fIpid\fR]... .fi .LP .nf \fB/usr/bin/nohup\fR \fB-g\fR [\fB-Fa\fR] \fIgpid\fR [\fIgpid\fR]... .fi .LP .nf \fB/usr/xpg4/bin/nohup\fR \fIcommand\fR [\fIargument\fR]... .fi .SH 機能説明 .sp .LP \fBnohup\fR ユーティリティーは、\fIcommand\fR で示すコマンドを、指定された引数とともに呼び出します。\fIcommand\fR が呼び出されたとき、\fBnohup\fR は、そのプロセスが \fBSIGHUP\fR シグナルを無視するように設定します。 .sp .LP \fB-p\fR または \fB-g\fR フラグを指定して実行すると、\fBnohup\fR は、プロセス \fBID\fR またはグループ \fBID\fR のリストで指定された実行中のプロセスが、ハングアップおよび停止の影響を受けないように設定します。 .sp .LP 指定したコマンドが実行に時間を要する場合、ユーザーがコマンド終了前にログアウトする場合は、\fBnohup\fR ユーティリティーを使うと便利です。\fI\fRシェルが 終了するときに、システムはその子プロセスに \fBSIGHUP\fR シグナルを送信します。それにより、デフォルト では子プロセスが終了します。停止、実行中、バックグラウンドにあるすべてのジョブは、その呼び出しが \fBnohup\fR コマンドによるものだった場合、もしくはプロセスがプログラム上 \fBSIGHUP\fR を無視するように選択されていた場合、\fBSIGHUP\fR を無視して続行します。 .sp .LP \fBnohup\fR ユーティリティーは、プロセスが \fBSIGHUP\fR を無視するようにしますが、これらのプロセスをほかのシグナルから保護するわけではありません。最近のシェルはログアウト時に \fBSIGHUP\fR 以外のシグナルを送信する場合があるため、制御しているシェルが終了したときに、\fB/usr/bin/nohup\fR の下で実行されているジョブが強制終了されることがありえます。 .sp .ne 2 .mk .na \fB\fB/usr/bin/nohup\fR\fR .ad .RS 27n .rt \fB/usr/bin/nohup\fR によって実行されるプロセスは、\fBSIGHUP\fR (ハングアップ) および \fBSIGQUIT\fR (中止) シグナルを受け付けません。 .RE .sp .ne 2 .mk .na \fB\fB/usr/bin/nohup\fR \fB-p\fR [\fB-Fa\fR]\fR .ad .RS 27n .rt \fBID\fR に指定されたプロセスは、\fBSIGHUP\fR (ハングアップ) および \fBSIGQUIT\fR (中止) シグナルを受け付けません。また、制御端末への出力は、すべて \fBnohup.out\fR ファイルにリダイレクトされます。\fB-F\fR を指定すると、\fBnohup\fR は、各プロセスに制御を強制します。\fB-a\fR を指定すると、\fB\fRプロセスが \fBSIGHUP\fR (ハングアップ) および \fBSIGQUIT\fR (中止) シグナルのどちらかに対してハンドラをインストールした場合でも、これらのシグナル設定を変更します。 .RE .sp .ne 2 .mk .na \fB\fB/usr/bin/nohup\fR \fB-g\fR [\fB-Fa\fR]\fR .ad .RS 27n .rt \fBID\fR によって指定たプロセスと同じグループに属するすべてのプロセスは、\fBSIGHUP\fR (ハングアップ) および \fBSIGQUIT\fR (中止) シグナルを受け付けません。また、制御端末への出力は、すべて \fBnohup.out\fR ファイルにリダイレクトされます。\fB-F\fR を指定すると、\fBnohup\fR は、各プロセスに制御を強制します。\fB-a\fR を指定すると、\fB\fRプロセスが \fBSIGHUP\fR (ハングアップ) および \fBSIGQUIT\fR (中止) シグナルのどちらかに対してハンドラをインストールした場合でも、これらのシグナル設定を変更します。 .RE .sp .ne 2 .mk .na \fB\fB/usr/xpg4/bin/nohup\fR\fR .ad .RS 27n .rt \fB/usr/xpg4/bin/nohup\fR によって実行されるプロセスは、\fBSIGHUP\fR シグナルを受け付けません。 .sp \fBnohup\fR ユーティリティーは、プロセスを \fBSIGTERM\fR (終了) シグナルに影響されないようにはしないため、プロセス自身またはシェルが \fBSIGTERM\fR に影響されないようにしていないかぎり、プロセスは \fBSIGTERM\fR シグナルを受信します。 .sp \fBnohup.out\fR が現在のディレクトリに書き込み可能でない場合、\fB$HOME/nohup.out\fR に出力先が変更 (リダイレクト) されます。ファイルが作成された場合、そのファイルは読み取り権と書き込み権 (\fB600\fR) を持ちます。\fBchmod\fR(1) を参照してください。標準エラーは、端末の場合出力先を標準出力に変更され、その他の場合は変更されません。\fBnohup\fR が実行するプロセスの優先度は変更されません。 .RE .SH オプション .sp .LP サポートしているオプションは、次のとおりです。 .sp .ne 2 .mk .na \fB\fB-a\fR\fR .ad .RS 6n .rt どのような場合でも、対象プロセスの設定を変更します。このオプションは、\fB-p\fR または \fB-g\fR と一緒に使用した場合にのみ有効です。 .RE .sp .ne 2 .mk .na \fB\fB-F\fR\fR .ad .RS 6n .rt 強制。別のプロセスが制御していても、対象のプロセスを捕捉します。このオプションは、\fB-p\fR または \fB-g\fR と一緒に使用した場合にのみ有効です。 .RE .sp .ne 2 .mk .na \fB\fB-g\fR\fR .ad .RS 6n .rt リストしたプロセスグループに対して処理を実行します。\fB-p\fR オプションと同時には使用できません。 .RE .sp .ne 2 .mk .na \fB\fB-p\fR\fR .ad .RS 6n .rt リストしたプロセスに対して処理を実行します。\fB-g\fR オプションと同時には使用できません。 .RE .SH オペランド .sp .LP 次のオペランドがサポートされています。 .sp .ne 2 .mk .na \fB\fIpid\fR \fR .ad .RS 12n .rt \fBnohup\fR \fB-p\fR が使用する、10 進数のプロセス \fBID\fR。 .RE .sp .ne 2 .mk .na \fB\fIpgid\fR\fR .ad .RS 12n .rt \fBnohup\fR \fB-g\fR が使用する、10 進数のプロセスグループ \fBID\fR。 .RE .sp .ne 2 .mk .na \fB\fIcommand\fR\fR .ad .RS 12n .rt 呼び出すコマンドの名前。\fI\fRこのオペランドに \fBshell_builtins\fR(1) ユーティリティーを指定した場合の処理結果は定義されていません。 .RE .sp .ne 2 .mk .na \fB\fIargument\fR\fR .ad .RS 12n .rt \fIcommand\fR オペランドのコマンドを呼び出す際に引数として与える文字列。 .RE .SH 使用法 .sp .LP \fB-F\fR フラグを使用するときは注意してください。2 つの制御プロセスを 1 つの犠牲プロセスに課すと混乱することがあります。プライマリ制御プロセス (通常はデバッガ) が犠牲プロセスを停止しており、プライマリ制御プロセスが当該の \fBproc\fR ツールの適用時に何も実行していない場合のみ、安全性が確保されます。 .SH 使用例 .LP \fB例 1 \fR\fBnohup\fR をパイプラインまたはコマンドリストに適用する .sp .LP \fBnohup\fR をパイプラインまたはコマンドのリストに 適用した方が望ましい場合がよくあります。これは、シェルスクリプトと呼ばれる、パイプラインおよびコマンドリストを単一のファイルに格納する方法でしか実現されません。そうすれば、次を実行できます。 .sp .in +2 .nf example$ \fBnohup sh \fIfile\fR\fR .fi .in -2 .sp .sp .LP これで、\fBnohup\fR は \fIfile\fR 内のすべてに適用されます。\fIfile\fR というシェルスクリプトを頻繁に実行する予定の場合、\fIfile\fR 実行権を指定すれば、\fBsh\fR の入力が少なくて済みます。 .sp .LP アンパサンドを追加すると、\fIfile\fR の内容がバックグラウンドで実行され、割り込みも無視されます (\fBsh\fR(1) を参照)。 .sp .in +2 .nf example$ \fBnohup \fIfile\fR &\fR .fi .in -2 .sp .LP \fB例 2 \fR\fBnohup -p\fR をプロセスに適用する .sp .in +2 .nf example$ \fBlong_running_command &\fR example$ \fBnohup -p `pgrep long_running_command`\fR .fi .in -2 .sp .LP \fB例 3 \fR\fBnohup -g\fR をプロセスグループに適用する .sp .in +2 .nf example$ \fBmake &\fR example$ \fBps -o sid -p $$\fR SID 81079 example$ \fBnohup -g `pgrep -s 81079 make`\fR .fi .in -2 .sp .SH 環境 .sp .LP \fBnohup\fR の実行に影響を与える次の環境変数についての詳細は、\fBenviron\fR(5) を参照してください。\fBLANG\fR、\fBLC_ALL\fR、\fBLC_CTYPE\fR、\fBLC_MESSAGES\fR、\fB\fR\fBNLSPATH\fR、および \fBPATH\fR。 .sp .ne 2 .mk .na \fB\fBHOME\fR\fR .ad .RS 8n .rt ユーザーのホームディレクトリのパス名を定義します。出力ファイル \fBnohup.out\fR が現在のディレクトリ内に生成できない場合、\fBnohup\fR コマンドは \fBHOME\fR が示すディレクトリを使ってファイルを作成します。 .RE .SH 終了ステータス .sp .LP 次の終了ステータスが返されます。 .sp .ne 2 .mk .na \fB\fB126\fR\fR .ad .RS 7n .rt \fIcommand\fR で示すコマンドユーティリティーは見つかったが呼び出すことができなかった。 .RE .sp .ne 2 .mk .na \fB\fB127\fR\fR .ad .RS 7n .rt \fBnohup\fR 中でエラーが発生した、または \fIcommand\fR で示すコマンドが見つからなかった。 .RE .sp .LP それ以外の場合、\fIcommand\fR オペランドの終了値が \fBnohup\fR の終了値になります。 .SH ファイル .sp .ne 2 .mk .na \fB\fBnohup.out\fR\fR .ad .RS 19n .rt 標準出力が端末で現在のディレクトリが書き込み可能な場合に、\fBnohup\fR 実行 (結果) の出力用に使われるファイル .RE .sp .ne 2 .mk .na \fB\fB$HOME/nohup.out\fR\fR .ad .RS 19n .rt 標準出力が端末で現在のディレクトリが書き込み可能でない場合に、\fBnohup\fR 実行 (結果) の出力用に使われるファイル .RE .SH 属性 .sp .LP 属性についての詳細は、マニュアルページの \fBattributes\fR(5) を参照してください。 .SS "/usr/bin/nohup" .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ 使用条件system/core-os _ CSI有効 .TE .SS "/usr/xpg4/bin/nohup" .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性タイプ属性値 _ 使用条件system/xopen/xcu4 _ CSI有効 _ インタフェースの安定性確実 _ 標準T{ \fBstandards\fR(5) を参照してください。 T} .TE .SH 関連項目 .sp .LP \fBbash\fR(1), \fBbatch\fR(1), \fBchmod\fR(1), \fBcsh\fR(1), \fBdisown\fR(1), \fBksh88\fR(1), \fBnice\fR(1), \fBpgrep\fR(1), \fBproc\fR(1), \fBps\fR(1), \fBsh\fR(1), \fBshell_builtins\fR(1), \fBsetpgrp\fR(1), \fBsignal\fR(3C), \fBproc\fR(4), \fBattributes\fR(5), \fBenviron\fR(5), \fBstandards\fR(5) .SH 警告 .sp .LP ログアウトをしようとしたときにログインシェルとして Korn シェル (\fBksh88\fR(1)) を実行し、\fBnohup\fR されたジョブを実行していた場合、次のような警告メッセージが表示されます。 .sp .in +2 .nf You have jobs running. .fi .in -2 .sp .sp .LP ログアウトを有効にするために、ログアウトを 2 回行う必要があります。ただし、バックグラウンドジョブは実行し続けます。 .SH 注意事項 .sp .LP \fBnohup\fR という C シェル (\fBcsh\fR(1)) 組み込みコマンドは、終了シグナル \fBSIGHUP\fR の影響が及ばないようにします。しかし、出力先を \fBnohup.out\fR に変更しません。csh (1) を使用すると、`\fB&\fR\&' で実行するコマンドは、バックグラウンドに居る間は、自動的に \fBHUP\fR シグナルの影響を受けなくなります。 .sp .LP \fBnohup\fR は、コマンドシーケンスを認識しません。次のコマンドを見てください。 .sp .in +2 .nf example$ \fBnohup command1; command2\fR .fi .in -2 .sp .sp .LP このコマンドでは、\fBnohup\fR ユーティリティーが適用するのは \fBcommand1\fR だけです。次のコマンドを見てください。 .sp .in +2 .nf example$ \fBnohup (command1; command2)\fR .fi .in -2 .sp .sp .LP このコマンドは構文的に正しくありません。