nohup:入力を無視する-それはどういう意味ですか?


16

私はnohupしばらくの間からコマンドを使用しています

nohup bash life.bash > nohup.out 2> nohup.err &

nohup.errファイル私はいつもラインを持っていますnohup: ignoring input。それが何を意味するのか理解するのを手伝ってもらえますか?


自分でリダイレクトを実行する場合、ほとんど何も使用できませんnohupbash life.bash >life.out 2>life.err </dev/null & disown -h "$!"シェル自体に組み込まれた機能のみを使用して同じことを行います。
チャールズダフィー

回答:


12

それはnohup設定されていることを伝えるだけです。それを標準エラーに出力しますnohup.err。標準エラーはにリダイレクトされています。メッセージを回避するには、その標準入力をリダイレクトします。

nohup bash life.bash > nohup.out 2> nohup.err < /dev/null &

nohup標準入力、標準出力、標準エラーをチェックして、端末に接続されているものを確認します。接続されているものを見つけると、それらを適切に処理し(入力を無視し、出力をnohup.outリダイレクトし、エラーを標準出力にリダイレクトします)、何が行われたかを通知します。切断する必要があるものが見つからない場合、それ自体は何も出力しません。


6

nohup 何をしているのか、入力を無視していることを正確に伝えています。

このメッセージを回避したい場合は、次のようにstdinをリダイレクトします/dev/null

nohup bash life.bash </dev/null >nohup.out 2>nohup.err &

つまり、バックグラウンドで実行されているように、単純な意味ですべてのキーボード入力を無視することを意味します。
マノハールレディポレディ

3
man nohup

「標準入力が端末の場合、読み取り不可能なファイルからリダイレクトします。」

したがって、

nohup: ignoring input and appending output to 'nohup.out'

OPTIONエントリにかかわらず、想定されていることを実行しているため、入力が破棄されています。

ALSOそれはあなたがリダイレクトの冗長利用しているようです。nohupはすでにnohup.outを作成しており、すべてが正常に機能している場合は、stderrもそこにリダイレクトする必要があります。

乾杯!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.