前言:
在進行程式開發或除錯的時候,我們經常會回去ubuntu系統的時間,有時只是單純的想檢視時間,但我們更多的時候是想通過系統時間去做一些事情,例如通過時間命令一些資料夾或者檔案,等等。
以下對date的使用均僅限於以unix為基礎的系統,嵌入式平台或者android平台上,對date命令做了簡化處理,所以並不適用,請謹記!
小先生的乾貨:
下面是官方對date的使用講解,看的是不是有點... ...
用法:date [選項]... [+格式]
或:date [-u|--utc|--universal] [mmddhhmm[[cc]yy][.ss]]
display the current time in the given format, or set the system date.
必選引數對長短選項同時適用。
-d, --date=string display time described by string, not 'now'
-f, --file=datefile like --date; once for each line of datefile
-i[fmt], --iso-8601[=fmt] output date/time in iso 8601 format.
fmt='date' for date only (the default),
'hours', 'minutes', 'seconds', or 'ns'
for date and time to the indicated precision.
example: 2006-08-14t02:34:56-0600
-r, --rfc-2822 output date and time in rfc 2822 format.
example: mon, 14 aug 2006 02:34:56 -0600
--rfc-3339=fmt output date/time in rfc 3339 format.
fmt='date', 'seconds', or 'ns'
for date and time to the indicated precision.
example: 2006-08-14 02:34:56-06:00
-r, --reference=file display the last modification time of file
-s, --set=string set time described by string
-u, --utc, --universal print or set coordinated universal time (utc)
--help 顯示此幫助資訊並退出
--version 顯示版本資訊並退出
接下來小先生將會通過幾個用例進行部分引數的說明:
用例1:獲取某一天這個時刻的系統時間並以「年月日_時分秒」顯示
$ date -d "***" +"%y%m%d_%h%m%s"
說明:***:指的是你想顯示的那一天的乙個字串描述,例如,今天可以用today、now等,明天可以用tomorrow(貌似只能使用這個),前天或前幾天可以用yesterday,1 days ago,n days ago。
效果:表示20180315_203053前兩天的這個時刻
date -d "2 days ago" +"%y%m%d_%h%m%s"
20180313_203053
用例2:獲取前一小時的當前時刻
$ date -d "(-)n hours" +"%y%m%d_%h%m%s"
說明:n表示你要去的時間與當前時間相差的小時數,加上「-」代表你要回去n小時,不要減號表示你要到的未來n小時。
效果:如果想回到2個小時前
$ date -d "-2 hours" +"%y%m%d_%h%m%s"
20180315_193357
備註:"%y%m%d_%h%m%s"的顯示可以根據讀者喜好自行新增和刪減,也可以變更間隔符等等。
用例3:設定時間
$ date -s "2018-03-15 20:43:00"
說明:-s表示要設定時間了,但是後面的引數可以隨意,可以只設定年月日,也可以時分,秒就算了,等等就到了,哈哈哈。
效果:由於我的時間相當準,就不演示了,呵呵呵~。
未完待續~~~
<<< 返回部落格架構
教你使用shell陣列
陣列的使用,需要掌握 1 對陣列進行賦值 2 通過下標訪問陣列元素 3 迴圈遍歷所有的元素 如下 01 bin bash 02 03a 39 04b 5 05c 36 06d 12 07e 9 08f 35 09 對陣列進行賦值 10values a b c d e f 11 values 39 5...
Shell指令碼中cd命令使用
在寫shell指令碼的時候發現cd切換目錄的時候無法切換,是下面的。bin bash changedir.sh cd home firefox pwd 我仔細一想,我執行的時候是 changedir.s h來執行的,這樣執行的話終端會產生乙個 子shell 子shell去執行我的指令碼,在子shel...
Shell指令碼中的分號使用
在linux中,語句中的分號一般用作 塊標識 1 單行語句一般要用到分號來區分 塊,例如 if ps1 then echo test is ok fi test is ok 該指令碼或命令列中,需要兩個分號才為正確的語句,第乙個分號是then前的分號,用於標識條件塊結束,第二個分號在fi前,用於標識...