0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

SSH でログアウトした後もプロセスを残すメモ

Last updated at Posted at 2020-07-20

はじめに

SSH接続している際に、ログアウト後もプロセスを持続させる方法のメモです。
やりたいことは基本的にはこれでできます。

$ nohup コマンド内容 > out.log &

$ nohup echo "very very heavy task" > out.log &

これを実行すると、カレンドディレクトリに out.log ファイルが作成され、出力内容が保存されます。

out.log
very very heavy task

関数化

ここからがメインです。先程のコマンドはちょっと長いので、関数として登録します。

僕が使用しているシェルは zsh なので ~/.zshrc に次の内容を追記します。
bash の場合は ~/.bashrc に追記してください。

.zshrc
background () {
    nohup ${@:1} > out.log &
}

内容を保存して、変更内容を適応します。

$ source ~/.zshrc

これで実行したいプロセスの先頭に background を付けるだけで、バックグラウンド実行することができます。

$ background echo "very very heavy task"

引数がいくつあっても大丈夫です。

$ background python takes_many_args.py foo bar --arg3 1234 --arg4 abcd
0
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?