我做类似的事情
wget --user=userName --password=passWord --timestamping https://url.to/a/file.csv.gz
gzip -cd file.csv.gz > file.csv
(未测试)
请注意,服务器需要身份验证。
仅当文件比本地文件新时才会下载该文件。这很好。
但是,仅当远程文件比本地文件新时才应执行第 2 行。
我怎样才能做到这一点?
我做类似的事情
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。