我做类似的事情
wget --user=userName --password=passWord --timestamping https://url.to/a/file.csv.gz
gzip -cd file.csv.gz > file.csv
(未测试)
请注意,服务器需要身份验证。
仅当该文件比本地文件新时,才会下载该文件。这很好。
但是,仅当远程文件比本地文件新时,才应执行第 2 行。
我该怎么做?
只需测试一下,看看file.csv.gz
的修改时间是否比file.csv
更新。
在 Linux 上:
if [ $(stat -c '%Y' file.csv.gz) -gt $(stat -c '%Y' file.csv) ]; then
gzip -cd file.csv.gz > file.csv
fi
在BSD(如Mac OS X)上:
if [ $(stat -f '%m' file.csv.gz) -gt $(stat -f '%m' file.csv) ]; then
gzip -cd file.csv.gz > file.csv
fi
其他系统可能有不同的参数stat
;检查系统上的man stat
,或者help stat
它是否是内置的shell。