#!/bin/sh
|
# 保存串口设备信息
|
echo -en "Content-type: text/html; charset=utf-8\n\n"
|
#*****************************************************
|
source ../bin/env.sh
|
db="../bin/db"
|
jsoner="../bin/jsoner"
|
|
path="/work/data"
|
|
|
df_output=$(df -h $path | tail -n 1)
|
|
# 解析输出字段
|
filesystem=$(echo "$df_output" | awk '{print $1}')
|
used=$(echo "$df_output" | awk '{print $3}')
|
available=$(echo "$df_output" | awk '{print $4}')
|
mounted_on=$(echo "$df_output" | awk '{print $6}')
|
|
# 提取数值和单位
|
used_value=$(echo "$used" | grep -oE '[0-9.]+')
|
used_unit=$(echo "$used" | grep -oE '[A-Za-z]+')
|
available_value=$(echo "$available" | grep -oE '[0-9.]+')
|
available_unit=$(echo "$available" | grep -oE '[A-Za-z]+')
|
|
if [[ "$used_unit" = "K" || "$used_unit" = "" ]]
|
then
|
used_value="0"
|
used_unit="M"
|
fi
|
|
if [[ "$used_unit" = "G" ]]
|
then
|
used_value=$(echo "$used_value * 1024" | bc)
|
used_unit="M"
|
used="$used_value$used_unit"
|
fi
|
|
if [[ "$available_unit" = "K" || "$available_unit" = "" ]]
|
then
|
available_value="0"
|
available_unit="M"
|
fi
|
|
if [[ "$available_unit" = "G" ]]
|
then
|
available_value=$(echo "$available_value * 1024" | bc)
|
available_unit="M"
|
available="$available_value$available_unit"
|
fi
|
|
# 确保单位一致
|
if [ "$used_unit" != "$available_unit" ]; then
|
echo "错误:Used 和 Available 的单位不一致"
|
exit 1
|
fi
|
|
# 计算 Size 字段的值
|
size_value=$(echo "$used_value + $available_value" | bc)
|
size="${size_value}${used_unit}" # 保留单位
|
|
# 计算 Use% 字段的值
|
use_percent_value=$(echo "scale=2; $used_value / $size_value * 100" | bc)
|
use_percent="${use_percent_value}%"
|
|
|
|
# 输出解析结果
|
echo "{\"size\":\"$size\",\"used\":\"$used\",\"available\":\"$available\",\"use%\":\"$use_percent\"}"
|