我需要生成在一年的所有天弦的隨機數據的日期範圍如何產生的慶典
例如:
MIN_DATE=01.01.2012
MAX_DATE=31.12.2012
for date in {1...366..1}
do
echo ...
done
我需要生成在一年的所有天弦的隨機數據的日期範圍如何產生的慶典
例如:
MIN_DATE=01.01.2012
MAX_DATE=31.12.2012
for date in {1...366..1}
do
echo ...
done
for d in {0..365}; do date -d "2012-01-01 + $d days" +'%d.%m.%Y'; done
不是一個純粹的bash的解決辦法,但我dateutils能幫助:
dseq 01.01.2012 31.12.2012 -f %d.%m.%Y -i %d.%m.%Y
=>
01.01.2012
02.01.2012
...
31.12.2012
輸出格式可配置-f
和輸入格式機智h -i
。
使用ISO 8601日期格式(年 - 月 - 日),可以按照字典順序比較日期。由於bash
沒有字符串的「< =」運算符,所以比我想要的要稍微複雜一些。
year=2011
d="$year-01-01"
last="$(($year+1))-01-01"
while [[ $d < $last ]]; do
echo $d
d=$(date +%F --date "$d + 1 day")
done
如何自動執行此操作 泄漏年? –
@DmitryDubovitsky你是什麼意思? '29.02.2012'出現在輸出中。 –
要輸出自動, 例如對於2011年前年的紀錄會是2012-01-01 東西: 'days_in_year =日期 「2012-12-31」 + 「%J」; for d in ...' –