123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121 |
- memo() {
- # 获取传入的参数
- updatedContent=$*
- # 转义特殊字符
- # escapedContent=$(echo -n "$updatedContent" | jq -sRr @uri)
- # 构建请求体数据
- # data="{\"content\": \"$escapedContent\"}"
- # 构建请求体数据
- data="{\"content\": \"$updatedContent\"}"
- # 发送请求
- response=$(curl -s -X POST -H "Content-Type: application/json" \
- -H "Authorization: bearer eyJhbGciOiJIUzI1NiIsImtpZCI6InYxIiwidHlwIjoiSldUIn0.eyJuYW1lIjoidGlhbnl1bnBlcmZlY3QiLCJpc3MiOiJtZW1vcyIsInN1YiI6IjEiLCJhdWQiOlsidXNlci5hY2Nlc3MtdG9rZW4iXSwiaWF0IjoxNzA5MTc5NTUyfQ.LFxWB4efya1sL7VoJ42xpXxbAip-udT_Kx2OwZ8Y3-E" \
- -d "$data" \
- "https://memos.tianyunperfect.cn/api/v1/memo")
- # 判断是否存在name字段
- if [[ $response == *"name"* ]]; then
- echo "记录成功 https://memos.tianyunperfect.cn"
- else
- echo "失败" $response
- fi
- }
- todo() {
- memo "#todo $*"
- }
- # 通用上传函数
- function upload_file_common() {
- # 参数1: 文件路径
- local file_path="$1"
- # 参数2: 上传URL(例如:http://x.xxx.cn:44704/2025/)
- local upload_url="$2"
- # 参数3: 用户名(可选,用于HTTP Basic Auth)
- local username="${3:-admin}"
- # 参数4: 密码(可选,用于HTTP Basic Auth)
- local password="${4:-123456}"
- # 检查文件路径是否为空
- if [ -z "$file_path" ]; then
- echo "Error: file_path is empty!"
- return 1
- fi
- # 检查文件是否存在
- if [ ! -f "$file_path" ]; then
- echo "Error: file does not exist!"
- return 1
- fi
- # 检查上传URL是否为空
- if [ -z "$upload_url" ]; then
- echo "Error: upload_url is empty!"
- return 1
- fi
- # 获取文件名
- local file_name=$(basename "$file_path")
- # 构造完整的上传目标URL
- local full_upload_url="${upload_url%/}/$file_name"
- # 使用curl上传文件
- echo "Uploading file '$file_name' to '$full_upload_url'..."
- local response=$(curl -u "$username:$password" -T "$file_path" "$upload_url" 2>&1)
- # 检查curl命令是否成功执行
- if [ $? -ne 0 ]; then
- echo "Error: Failed to upload file. Response: $response"
- return 1
- fi
- # 构造下载地址
- local download_url="${upload_url%/}/$file_name"
- download_url="http://${username}:${password}@${download_url#http://}"
- # 打印下载地址
- echo "File uploaded successfully!"
- echo "Download URL: $download_url"
- }
- # 上传文件到指定的URL
- function upload_file() {
- # 获取当前年份
- local current_year=$(date +"%Y")
- # 构造上传URL,使用当前年份替换固定的2025
- local upload_url="http://nas1.tianyunperfect.cn:44704/${current_year}/"
- # 调用通用上传函数
- upload_file_common "$1" "$upload_url" "admin" "tianyunperfect"
- }
- # 上传临时文件到指定的URL
- function upload_tmp_file() {
- upload_file_common "$1" "http://nas1.tianyunperfect.cn:44704/upload_tmp_file/" "admin" "tianyunperfect"
- }
- # 获取本机IP地址
- get_ip_address() {
- ip_address=$(ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1' | head -n 1)
- echo "$ip_address"
- }
- # 设置代理
- set_proxy() {
- local ip=$(get_ip_address)
- local proxy_command="export https_proxy=http://${ip}:7890 http_proxy=http://${ip}:7890 all_proxy=socks5://${ip}:7890"
- echo "$proxy_command"
- eval "$proxy_command"
- echo "Proxy has been set to $ip:7890"
- }
- # 取消代理设置
- unset_proxy() {
- local unset_command="unset https_proxy http_proxy all_proxy"
- echo "$unset_command"
- eval "$unset_command"
- echo "Proxy has been unset"
- }
|