Linuxとかでジョブをバックグラウンドで実行し続ける方法

毎回調べてる気がするのでメモ

Linuxとかでシェルとかスクリプトとかを流したいけど、普通に実行した場合sshログアウトすると止まってしまいます。

実行して放置したい場合は、実行するスクリプトをバックグラウンドジョブとして実行する必要がありんす。

nohupコマンド

これ使えばいけるみたいです。

nohup ./example.sh > ./out.log 2> err.log < /dev/null &
  • ./example.sh
    • 実行対象ファイルパス
  • ./out.log
    • 標準出力を吐き出すためのファイルパス
  • ./err.log
    • 標準エラー出力を吐き出すためのファイルパス

上記コマンド実行するとpidが出力されるので、topコマンドとかで確認するときに使えます :)


参考サイト