タグ

Shellとgnuに関するgouei2001のブックマーク (2)

  • [Shell Script] dateコマンドで日時(日付、時刻)計算をする方法 - Life with IT

    2014/8/28更新 対応バージョン: 8.4 dateコマンドを使って日時計算をするには--dateオプションに続けて日時と計算の単位を指定すればよい。 指定できる単位は以下の通り。 年: years 月: months 日: days 時: hours 分: minutes 秒: seconds これに数字をつけて「2 days ago」のように自然なフレーズで指定すれば日付計算をやってくれる。 以下にいくつかサンプルを示す。dateはGNU版の最近のバージョンであれば特に問題ないだろう。 % date --version date (GNU coreutils) 8.4 : 今日から5日後 % date +%Y%m%d 20140827 % date --date "5 days" +%Y%m%d 20140901 2014/1/1から3日前 日付を指定するとその日を起点に計算され

    [Shell Script] dateコマンドで日時(日付、時刻)計算をする方法 - Life with IT
  • ログアウトしてもバックグラウンド ジョブを継続する方法

    はじめに SSH 接続で時間の掛かるシェルスクリプトをバックグラウンドで走らせて帰りたいのに、SSH 接続を切るとジョブが死んでしまいます。SSH 接続に限らず目の前の OS からログアウトしたりターミナル エミュレータを終了しても同じ現象が起こります。 この症状は正常です。なぜなら、バックグラウンド ジョブを起動したプロセス(ログイン シェル)が子プロセスである該当のバックグラウンドジョブをハングアップ シグナル( HUP )によって終了させるからです。 シェルスクリプトを起動した親プロセスは子プロセスの終了状態を監視しています。ですからログアウトして親プロセスであるシェルが終了すると子プロセスはゾンビ プロセスとなってしまうので親プロセスとなるシェル(ログインシェル)は子プロセスであるバックグラウンド ジョブを kill ( kill -HUP ) するのです。 nohup コマンド

    ログアウトしてもバックグラウンド ジョブを継続する方法
  • 1