Wget
將日期 -1day 與 wget 一起使用
我想每天使用 wget 和 cron 作業來提取文件,但是我希望它從遠端伺服器中提取前一天的文件,並且該文件由 URL 中的日期變數控制,如下所示:
http://example.com/export/file.csv?DateRange=20150429,20150429
我可以使用以下方法提取目前日期:
/usr/bin/wget --output-document=/file.csv "http://example.com/export/file.csv?DateRange=`date +%Y%m%d`,`date +%Y%m%d`"
不過,這個文件不好;我想拉昨天的日期而不是今天的。
有沒有辦法可以減去 1 天?
如果你有 GNU 日期,你可以這樣做:
date -d yesterday +%Y%m%d
例如:
$ date -d yesterday +%Y%m%d 20150430 $ date +%Y%m%d 20150501
命令將是:
/usr/bin/wget --output-document=/file.csv "http://domain.com/export/file.csv?DateRange=`date -d yesterday +%Y%m%d`,`date +%Y%m%d`"
查看GNU 文件以獲取更多範例。你也可以這樣做:
date --date='1 day ago'
或date --date='-1 day'
。