Linux Shell程式設計(22)——時間/日期 命令

尹成發表於2014-09-30
date
直接呼叫, date 就會列印日期和時間到 stdout 上. 這個命令有趣的地方在於它的格式化和分析選項上.


time
輸出統計出來的命令執行的時間.


touch
這是一個用來更新檔案被存取或修改的時間的工具,這個時間可以是當前系統的時間,也可以是指定的時間, 這個命令也用來產生一個新檔案.


Example:使用 date 命令


#!/bin/bash
# 練習 'date' 命令


echo "The number of days since the year's beginning is `date +%j`."
# 需要在呼叫格式的前邊加上一個 '+' 號.
# %j 給出今天是本年度的第幾天.


echo "The number of seconds elapsed since 01/01/1970 is `date +%s`."
#  %s 將產生從 "UNIX 元年" 到現在為止的秒數,yields number of seconds since "UNIX epoch" began,


prefix=temp
suffix=$(date +%s)  # 'date'命令的 "+%s" 選項是 GNU-特性.
filename=$prefix.$suffix
echo $filename


exit 0


-u 選項將給出 UTC 時間(Universal Coordinated Time).

date 命令有許多的輸出選項. 比如 %N 將以10億分之一為單位表示當前時間. 這個選項的一個有趣的用法就是用來產生一個6位的隨機數.


date +%j
# 顯示今天是本年度的第幾天(從1月1日開始計算).


date +%k%M
# 顯示當前小時數和分鐘數.


#  'TZ' 引數允許改變當前的預設時區.
date
TZ=EST date

SixDaysAgo=$(date --date='6 days ago')
OneMonthAgo=$(date --date='1 month ago')  # 4周前(不是一個月).
OneYearAgo=$(date --date='1 year ago')

相關文章