nohupは、&、2>&1コマンド解析

nohupはは中断操作を意味し、&​​2を意味し、バックグラウンドで実行されている意味>&1は標準出力とエラー出力が同じファイルにリダイレクトされています。
単純にしても動作しますnohupをコンソールをオフに入れて、それはまだ動作が実行されます。
https://blog.csdn.net/liuyanfeier/article/details/62422742徹底し、より説明し、私は彼に与えた少し補足
参照することができますhttps://www.jianshu.com/p/747e0d5021a2

nohupは、コマンド解析

ケースを想定、あなたはどのように行うには、バックグラウンドのコマンドを実行したいですか?最良の方法は、使用することです&、プラスコマンドの最後に&バックグラウンドで実行することができます。

&分析例

あなたがPythonの123.pyと呼ばれるプログラムがあると
何かが出力にあり、このようなコードを。

import time
a = 1
while True:
        print("start to print sth")                                                                                                                       
        a+=1
        print("a=%s" %(a))
        time.sleep(2)

あなたはそれを実行する必要がある場合は、その後python3 123.py、正しい内容のlog.txtにリダイレクトすることができます。コマンドがある。この時間
python3 123.py > log.txt

  • 実行した後、コンソールは、常にこのようにされている、あなたは他の操作を行うことができません。
su@DESKTOP-FA1P4IO:~$ python3 123.py >> log.txt
  • プラスの後ろに&操作した後は、何か他のものすることができます。
suyuesheng@DESKTOP-FA1P4IO:~$ python3 123.py >> log.txt &
[2] 809
suyuesheng@DESKTOP-FA1P4IO:~$

場合でも、しかし、コンソールを閉じた後、python3 123.py >> log.txt &後ろにあり&、それはまだプロセスを終了します。
受信信号は、端末をオフにハングアップするので。nohupを信号をハングアップされません。

名前nohupを特許請求の範囲、無視すべてがハングに送られるように(SIGHUP)はサブコマンド信号を送ります。
コマンドへのすべてSIGHUP信号を無視しているように、コマンドは、SIGHUP信号を受信しません。
SIGHUPはそれを合図は何ですか?
端末の終わりかもしれ理解することは簡単で、オペレーティングシステムは、デーモンにSIGHUPシグナルを送信します。

  • このようになりnohupを使用します
su@DESKTOP-FA1P4IO:~$ nohup python3 123.py >> log.txt &
[3] 905

おすすめ

転載: www.cnblogs.com/sogeisetsu/p/11403326.html