36 lines
940 B
Bash
36 lines
940 B
Bash
#!/bin/bash
|
|
echo "🚀 一键网络测速"
|
|
|
|
# 测试网络连通性
|
|
echo "📡 检查网络连通性..."
|
|
if ping -c 2 8.8.8.8 &> /dev/null; then
|
|
echo "✅ 网络连接正常"
|
|
else
|
|
echo "❌ 网络连接失败"
|
|
exit 1
|
|
fi
|
|
|
|
# 延迟测试
|
|
echo ""
|
|
echo "🔄 测试网络延迟..."
|
|
ping -c 8 8.8.8.8 | tail -1 | awk -F'/' '{print "平均延迟: "$4" ms"}'
|
|
|
|
# 下载速度测试 - 使用更可靠的方法
|
|
echo ""
|
|
echo "⬇️ 测试下载速度..."
|
|
echo "开始下载测试文件..."
|
|
|
|
# 使用 time 和 wget 组合
|
|
/usr/bin/time -f "下载速度: %e秒 完成100MB下载" wget -q -O /dev/null --timeout=30 http://cachefly.cachefly.net/100mb.test
|
|
|
|
# 计算实际速度
|
|
if [ $? -eq 0 ]; then
|
|
echo "✅ 下载测试完成"
|
|
else
|
|
echo "❌ 下载测试失败,尝试备用服务器..."
|
|
wget -O /dev/null --progress=dot:giga --timeout=20 http://speedtest.ftp.otenet.gr/files/test100Mb.db
|
|
fi
|
|
|
|
echo ""
|
|
echo "🎯 测速完成"
|