我想尽可能简单地获取远程文件的字节大小。
问题在于,如今许多服务器都没有在其标头中发送content-size
参数
curl -I
,wget --spider
和wget --server-response
都给了我详细的标题,但是内容的大小却没有。
curl -Is https://wordpress.com | grep content
仅返回以下内容:
content-type: text/html; charset=utf-8
所以我想我可以像这样解决它:
curl -s https://wordpress.com/ > /tmp/foo; du /tmp/foo | awk '{print $1}'
它起作用。但是我认为自己下载文件并写入我的机器有点荒谬。
我想有一种更好的方法,像curl
之类的东西可以直接从内存中获取文件大小,或者只是将输出的长度以字节为单位获取bash。
答案 0 :(得分:1)
并非每次响应都保证content-size标头。因此,您最好的办法是使用content-size
(如果可用),如果不可用,请致电curl
下载并评估远程内容的大小:
curl -sL 'https://wordpress.com' --write-out '%{size_download}\n' --output /dev/null