本篇文章給大家分享的是有關(guān)shell中怎么獲取指定日期前N天的日期,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。
一、創(chuàng)建測(cè)試文件test.sh
#!/bin/sh . /etc/profile # 參數(shù): # args[0] ,數(shù)據(jù)日期,日期格式y(tǒng)yyy-MM-dd # 取30天以前的日期 function get_date_30daysbefore() { sec=`date -d $1 +%s` sec_30daysbefore=$((sec - 86400*30)) days_before=`date -d @$sec_30daysbefore +%F` echo $days_before } if [ $# == 1 ]; then today=$1 dates_30=`get_date_30daysbefore $1` else today=`date -d -1days '+%Y-%m-%d'` dates_30=`date -d -30days '+%Y-%m-%d'` fi echo $today echo $dates_30
二、無(wú)參運(yùn)行
## 不帶參數(shù),從當(dāng)前時(shí)間開(kāi)始算 $ ./test.sh 2016-10-28 2016-09-29
三、傳參運(yùn)行
$ ./test.sh 2015-10-29 2015-10-29 2015-09-29
以上就是shell中怎么獲取指定日期前N天的日期,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見(jiàn)到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。