#!/bin/bash # 运行方式:bash <(curl -s https://static.imily.net/sh/kylin/download.sh) "$(pwd)" "/十防系统/html.zip" # 运行方式:bash <(curl -s https://static.imily.net/sh/kylin/download.sh) "$(pwd)" "/十防系统/EnviControl-2.0.jar" # 运行方式:bash <(curl -s https://static.imily.net/sh/kylin/download.sh) "$(pwd)" "/十防系统/envi_control.sql" # 关闭防火墙:setstatus disable if [ -n "$1" ]; then cd $1 else cd $(dirname $0) fi # 判断是否联网 ping -c 1 wsziran.cn > /dev/null if [ $? -ne 0 ]; then echo "请检查网络连接" exit 1 else echo "请输入账户和密码,中间用:分隔:" read authpw # 用curl获取token, json结构是{token:'xxx'}, 并提取token json=$(curl -s -X GET "https://wsziran.cn:9009/api/v2/user/token" -H "Content-Type: application/json" -u $authpw) token=$(echo $json | awk -F'"' '{print $4}') if [ -z "$token" ]; then echo "获取token失败" exit 1 fi fi # 定义一个下载函数,接受一个文件路径参数 function download() { filename=$(basename $1) # 如果$2参数不存在,则取$1路径的文件名 filename=$(basename $1) echo "下载文件:$1" curl -G --data-urlencode "path=$1" "https://wsziran.cn:9009/api/v2/user/files" -H 'accept: */*' -H "Authorization: Bearer $token" -o $filename --progress-bar if [ $? -ne 0 ]; then echo "下载文件 $1 失败" exit 1 fi } # 如果$2不存在,提示输入 if [ -z "$2" ]; then echo "请输入FTP文件路径:" read path else path=$2 fi # 下载文件 download $path