シェル
現在の日付に経過した時間(分)を出力するためにシェル関数(および日付コマンド)のみを使用するシェルスクリプトをどのように作成できますか?
答え1
非指定子はリテラルとして扱われるため、date
型文字列を使用して現在の分の単純な算術式を構成し、シェルの組み込み算術を使用して結果を計算できます。例えば、bash
printf "$(( $(date '+%H * 60 + %M') ))\n"
シェルが算術をサポートしていない場合は、外部電卓を使用できます。bc
date '+%H * 60 + %M' | bc
またはdc
date '+%H 60 * %M + p' | dc
答え2
GNUdate
とbash
:
daystart_sec="$(date --date="today 00:00:00" +%s)"
now_sec="$(date +%s)"
echo $(((now_sec-daystart_sec)/60))
答え3
1日に残った時間(例:1440分)から1日に経過した時間(分)をどのように減算できますか?だから基本的には上記の出力を1440から減算したいと思います。