linux里date的使用


1.獲取現在的時間
1.1當前時間
>>date
Thu May 18 10:39:41 CST 2017
>>date +%s
1495075680
1.2當前日期
>>date +"%Y%m%d"
20170518
>>date +"%Y-%m-%d"
2017-05-18
其他格式的看附錄,或者 date --help 查看%加字母代表什么意思。
1.3賦值變量
將事件給變量:
>>day=$(date +"%D"); echo $day
05/18/17
注意:
1.date后面必須有空格,date+"%Y%m%d"不可以
2.加號后面不可以有空格! date + "%Y%m%d"不可以
3.加號后面的這個 單引號雙引號或者都不加都可以
 
2.時間的加減操作
2.1獲取昨日時間(多日前同理)
>>date -d "-1 day" 或者 date -d "1 day ago"
Wed May 17 10:53:08 CST 2017
>>date -d "1 day ago" +%s
1494989818
2.2獲取昨日日期
>>date -d "-1 day" +%Y%m%d
20170517
2.2獲取明日時間
>>date -d "+1 day" 或者 date -d "1 day"
(1和day中間可以不加空格,不加空格的時候可以不加引號)
2.3獲取上個月、去年的日期、時間(未來同理)
>>date -d "-1 month" +%Y%m%d
20170418
>>date -d "-1 year" +%Y%m%d
20160518
 
3.時間的格式轉換(其實前面一直在用)
3.1普通轉換
>>date -d "2017-05-19" +%Y%m%d
20170519
>>date -d "2017-05-19" +%s
1495123200
>>date -d @"1495123200" +%Y%m%d
20170519
>>date -d @1495123200
Fri May 19 00:00:00 CST 2017
3.2變量轉換
>>day=20170518
>>date -d $day +%Y-%m-%d
2017-05-18
3.3時間戳轉日期
>>time=1495077137
>>day=$(date -d @$time +%Y-%m-%d);echo $day
2017-05-18
 
以下為個人開發組的規則
4.azkaban上日期的使用(今日是20170518)
1.獲取的是昨日的日期
job中: xxx.sh -t ${day}
(默認取昨日,如果輸入時間則取輸入的時間,注意此時不會減一天)
sh中(默認):
${day} 獲取 2017-05-17
${day_str}獲取 20170517
2.獲取的是今日的日期
job中:xxx.sh -n ${day}
其余不變
sh中(默認):
${day} 獲取 2017-05-18
${day_str}獲取 20170518
3.以下四個參數都是取的現在時間
${cur_day}獲取 2017-05-18
${cur_day_str}獲取 20170518
(現在是11點37)
$shour:10
$ehour:10
$minute:37


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM