pri_config.sh 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. memo() {
  2. # 获取传入的参数
  3. updatedContent=$*
  4. # 转义特殊字符
  5. # escapedContent=$(echo -n "$updatedContent" | jq -sRr @uri)
  6. # 构建请求体数据
  7. # data="{\"content\": \"$escapedContent\"}"
  8. # 构建请求体数据
  9. data="{\"content\": \"$updatedContent\"}"
  10. # 发送请求
  11. response=$(curl -s -X POST -H "Content-Type: application/json" \
  12. -H "Authorization: bearer eyJhbGciOiJIUzI1NiIsImtpZCI6InYxIiwidHlwIjoiSldUIn0.eyJuYW1lIjoidGlhbnl1bnBlcmZlY3QiLCJpc3MiOiJtZW1vcyIsInN1YiI6IjEiLCJhdWQiOlsidXNlci5hY2Nlc3MtdG9rZW4iXSwiaWF0IjoxNzA5MTc5NTUyfQ.LFxWB4efya1sL7VoJ42xpXxbAip-udT_Kx2OwZ8Y3-E" \
  13. -d "$data" \
  14. "https://memos.tianyunperfect.cn/api/v1/memo")
  15. # 判断是否存在name字段
  16. if [[ $response == *"name"* ]]; then
  17. echo "记录成功 https://memos.tianyunperfect.cn"
  18. else
  19. echo "失败" $response
  20. fi
  21. }
  22. todo() {
  23. memo "#todo $*"
  24. }
  25. # 通用上传函数
  26. function upload_file_common() {
  27. # 参数1: 文件路径
  28. local file_path="$1"
  29. # 参数2: 上传URL(例如:http://x.xxx.cn:44704/2025/)
  30. local upload_url="$2"
  31. # 参数3: 用户名(可选,用于HTTP Basic Auth)
  32. local username="${3:-admin}"
  33. # 参数4: 密码(可选,用于HTTP Basic Auth)
  34. local password="${4:-123456}"
  35. # 检查文件路径是否为空
  36. if [ -z "$file_path" ]; then
  37. echo "Error: file_path is empty!"
  38. return 1
  39. fi
  40. # 检查文件是否存在
  41. if [ ! -f "$file_path" ]; then
  42. echo "Error: file does not exist!"
  43. return 1
  44. fi
  45. # 检查上传URL是否为空
  46. if [ -z "$upload_url" ]; then
  47. echo "Error: upload_url is empty!"
  48. return 1
  49. fi
  50. # 获取文件名
  51. local file_name=$(basename "$file_path")
  52. # 构造完整的上传目标URL
  53. local full_upload_url="${upload_url%/}/$file_name"
  54. # 使用curl上传文件
  55. echo "Uploading file '$file_name' to '$full_upload_url'..."
  56. local response=$(curl -u "$username:$password" -T "$file_path" "$upload_url" 2>&1)
  57. # 检查curl命令是否成功执行
  58. if [ $? -ne 0 ]; then
  59. echo "Error: Failed to upload file. Response: $response"
  60. return 1
  61. fi
  62. # 构造下载地址
  63. local download_url="${upload_url%/}/$file_name"
  64. download_url="${download_url#http://}"
  65. # 打印下载地址
  66. echo "File uploaded successfully!"
  67. echo "Download URL: $download_url"
  68. }
  69. # 上传文件到指定的URL
  70. function upload_file() {
  71. # 获取当前年份
  72. local current_year=$(date +"%Y")
  73. # 构造上传URL,使用当前年份替换固定的2025
  74. local upload_url="https://dufs.n1.tianyunperfect.cn:10086/${current_year}/"
  75. # 调用通用上传函数
  76. upload_file_common "$1" "$upload_url" "admin" "tianyunperfect"
  77. }
  78. # 上传临时文件到指定的URL
  79. function upload_tmp_file() {
  80. upload_file_common "$1" "https://dufs.n1.tianyunperfect.cn:10086/upload_tmp_file/" "admin" "tianyunperfect"
  81. }
  82. # 获取本机IP地址
  83. get_ip_address() {
  84. 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)
  85. echo "$ip_address"
  86. }
  87. # 设置代理
  88. set_proxy() {
  89. local ip=$(get_ip_address)
  90. local proxy_command="export https_proxy=http://${ip}:7890 http_proxy=http://${ip}:7890 all_proxy=socks5://${ip}:7890"
  91. echo "$proxy_command"
  92. eval "$proxy_command"
  93. echo "Proxy has been set to $ip:7890"
  94. }
  95. # 取消代理设置
  96. unset_proxy() {
  97. local unset_command="unset https_proxy http_proxy all_proxy"
  98. echo "$unset_command"
  99. eval "$unset_command"
  100. echo "Proxy has been unset"
  101. }
  102. alias bili_download="docker run --rm -it -v /177_data_m2/dufs:/app siguremo/yutto --vcodec hevc:copy --no-danmaku --no-subtitle -c e77750a5%2C1754742098%2C051c6%2A21CjAeqhTTZoCr8_TJcAh_gDVUAAKOEhXCMM1KI9uIFO1uXvYZgnZYgRiDrns7T1U1BYMSVjJjWVhTOEVfRDlKWlFseVNibWdjVGFjdHhJVTFaM1VVaE90NXBxbWxFN0t4RnBuNHNnQjYxdDVIc3ZTb01VNFF1TFVVQm9fUHJvelJSa2FKY0VUMGZ3IIEC"
  103. sync_pri() {
  104. wget https://git.tianyunperfect.cn/tianyunperfect/sync/raw/master/pri_config.sh -O ~/.config/my_config/pri_config.sh && source ~/.config/my_config/pri_config.sh
  105. }