shell脚本如下:
首先 vi calculate_size.sh
写入下入内容文章来源:https://www.toymoban.com/news/detail-554087.html
#!/bin/bash
url=$1
excludes=("." "..", "./", "../")
TOTAL_SIZE=0
FILENAME="calculate_size_result.log"
echo $FILENAME
function calculate_size() {
local current_url="$1"
local file_list=$(curl -s "$current_url" | grep -oP '(?<=href=")[^"]+')
for file in $file_list; do
local file_url="$current_url$file"
if [[ ! " ${excludes[@]} " =~ " ${file} " ]]; then
local file_size=$(curl -s --head "$file_url" | grep -i "Content-Length" | awk '{ print $2 }'|sed 's/\r//g')
echo "File: ${file_url} Size: ${file_size} TOTAL_SIZE: ${TOTAL_SIZE}"
echo "File: ${file_url} Size: ${file_size} TOTAL_SIZE: ${TOTAL_SIZE}" >> $FILENAME
TOTAL_SIZE=$((TOTAL_SIZE + file_size))
calculate_size "$file_url/"
fi
done
}
calculate_size "$url"
echo "finish $url, TOTAL_SIZE: ${TOTAL_SIZE}"
echo "finish $url, TOTAL_SIZE: ${TOTAL_SIZE}" >> ${FILENAME}
执行 sh calculate_size.sh http://example.com/some/dir/
即可统计 http 文件服务器http://example.com/some/dir/ 中 dir 目录及其子目录下所有文件的大小。文章来源地址https://www.toymoban.com/news/detail-554087.html
到了这里,关于shell 脚本统计 http 文件服务器下指定目录及其子目录下所有文件的大小的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!