格式: date [選項] ... [+格式]
選項說明:
-d ,--date=字串 顯示指定字串所描述的時間
格式說明:
例子1:
#!/bin/bash結果截圖:##1. 獲取當前系統時間 yyyy-mm-dd hh:mm:ss
v_time_eq=`date "+%f %t"`
v_time=`date "+%y-%m-%d %h:%m:%s"`
echo -e "系統當前時間v_time: $, v_time_eq: $ \tv_time 等價於 v_time_eq, 但是v_time 的格式,可讀性更強,建議使用。"
##2. 獲取指定格式的日期 yyyy-mm-dd, yyyymmdd, yyyy/mm/dd
v_date=`date -d "$v_time" +%y%m%d`
v_date_dir=`date -d "$v_time" +%y/%m/%d`
v_date_hor=`date -d "$v_time" +%y-%m-%d`
echo "系統當前日期v_date: $, v_date_dir: $, v_date_hor: $。感受下不同的格式。"
##3.獲取前一天、後一天的日期 yyyymmdd
v_date_ago_1=`date -d "$v_date -1 day" +%y%m%d`
v_date_future_1=`date -d "$v_date 1 day" +%y%m%d`
echo "前一天v_date_ago_1: $, 後一天v_date_future_1: $"
##4.獲取前乙個月、後乙個月的日期 yyyymmdd
v_date_ago_1month=`date -d "$v_date -1 month" +%y%m%d` #遇到2月閏月的時候,會有問題,比如20170329,前乙個月會變成20170301
v_date_ago_1month_leap=`date -d "20170329 -1 month" +%y%m%d`
v_date_future_1month=`date -d "$v_date 1 month" +%y%m%d`
echo "前乙個月日期v_date_ago_1month: $, 後乙個月日期v_date_future_1month: $"
echo "閏2月的時候,會有問題,比如20170329 的前乙個月返回的是: $, 並不是20170228"
##5.獲取前一年、後一年的日期 yyyymmdd
v_date_ago_1year=`date -d "$v_date -1 year" +%y%m%d`
v_date_future_1year=`date -d "$v_date 1 year" +%y%m%d`
echo "前一年的日期v_date_ago_1year:$, 後一年的日期v_date_future_1year: $"
##6.獲取系統當前月份 月初日期 yyyymmdd
v_month=`date -d "$v_date" +%y%m`01
v_month_ago_1=`date -d "$v_month -1 month" +%y%m`01
v_month_future_1=`date -d "$v_month 1 month" +%y%m`01
echo "系統當前月份月初日期v_month:$,上個月月初日期v_month_ago_1:$, 下個月月初日期v_month_future_1:$"
例子2: 對於單獨使用小時、分鐘時,會有08,09這樣的出現,需要轉換成10進製,才能進行計算。
#!/bin/bash結果截圖:#當小時、分鐘是08、09時,計算出現錯誤,value too great for base (error token is "08") 數值太大不可為算數進製的基
#原因是shell將08、09當成了8進製數,而8進製數中合法的最大的數字是7,須讓shell強制將08、09當成10進製來解釋,在前面加上10#
v_hour=`date -d "20170701 08:05:00" +%h`
v_min=`date -d "20170701 08:05:00" +%m`
echo "v_hour is $"
echo "v_min is $"
## 轉換成10進製,才能計算
let v_hour=10#$
let v_min=10#$
## 計算總的分鐘數
let v_total_min=$*60+$
echo "v_total_min is $"
SHELL DATE 命令詳解
shell date命令 名稱 date 使用許可權 所有使用者 使用方式 date u d datestr s datestr utc universal date datestr set datestr help version format mmddhhmm cc yy ss 說明 date ...
SHELL DATE 命令詳解
shell date命令 名稱 date 使用許可權 所有使用者 使用方式 date u d datestr s datestr utc universal date datestr set datestr help version format mmddhhmm cc yy ss 說明 date ...
shell date命令詳解
使用方式 date u d datestr s datestr utc universal date datestr set datestr help version format mmddhhmm cc yy ss 說明 date 可以用來顯示或設定系統的日期與時間,在顯示方面,使用者可以設定欲顯...