自建图床小记四——上传脚本编写与图片迁移
2024年8月20日 23:12
前面三篇小记分别讲述了图床的整体架构、用 Workers 构建 Restful API 和 自动更新部署 SSL 证书,这一篇c处理由此带来的图片上传问题,主要是要为 Typora 编写自动上传脚本,并为博客原有的图片进行迁移。
自动上传脚本
主要还是给 Typora 用,实现这种效果

#!/bin/bashHOST="upload.example.com"CDN_HOST="cdn.example.com"UPLOAD_PATH="uploads/$(date +%Y/%m/%d)"AUTH_TOKEN="1145141919810"webp=falsemarkdown=falseforce=falsekeep=falsewhile getopts ":mwfkp:" opt; do case $opt in m|markdown) markdown=true ;; w|webp) webp=true ;; f|force) force=true ;; k|keep) keep=true ;; p|path) UPLOAD_PATH=$OPTARG ;; \?) echo "Invalid option: -$OPTARG" ;; esacdoneshift $((OPTIND - 1))UPLOAD_URL="https://$HOST/$UPLOAD_PATH"if [[ "$UPLOAD_URL" == */ ]]; then UPLOAD_URL="${UPLOAD_URL%?}"fifor image in "$@"; do if [ "$webp" = true ]; then cwebp -quiet "$image" -o "${image%.*}.webp" image="${image%.*}.webp" fi if [ "$keep" = true ]; then FILENAME=$(basename "$image") else FILENAME="$(md5sum $image | cut -c 1-13).$(basename $image | cut -d. -f2)" fi if [ "$force" = true ]; then UPLOAD_RESPONSE=$(curl -s -X PUT "${UPLOAD_URL}/$FILENAME" \ -w "%{http_code}" \ --data-binary @"$image" \ -H "X-Custom-Auth-Key: $AUTH_TOKEN" \ -H "Overwrite:...剩余内容已隐藏
查看完整文章以阅读更多
自建图床小记四——上传脚本编写与图片迁移
2024年8月20日 23:12
前面三篇小记分别讲述了图床的整体架构、用 Workers 构建 Restful API 和 自动更新部署 SSL 证书,这一篇c处理由此带来的图片上传问题,主要是要为 Typora 编写自动上传脚本,并为博客原有的图片进行迁移。
自动上传脚本
主要还是给 Typora 用,实现这种效果

#!/bin/bashHOST="upload.example.com"CDN_HOST="cdn.example.com"UPLOAD_PATH="uploads/$(date +%Y/%m/%d)"AUTH_TOKEN="1145141919810"webp=falsemarkdown=falseforce=falsekeep=falsewhile getopts ":mwfkp:" opt; do case $opt in m|markdown) markdown=true ;; w|webp) webp=true ;; f|force) force=true ;; k|keep) keep=true ;; p|path) UPLOAD_PATH=$OPTARG ;; \?) echo "Invalid option: -$OPTARG" ;; esacdoneshift $((OPTIND - 1))UPLOAD_URL="https://$HOST/$UPLOAD_PATH"if [[ "$UPLOAD_URL" == */ ]]; then UPLOAD_URL="${UPLOAD_URL%?}"fifor image in "$@"; do if [ "$webp" = true ]; then cwebp -quiet "$image" -o "${image%.*}.webp" image="${image%.*}.webp" fi if [ "$keep" = true ]; then FILENAME=$(basename "$image") else FILENAME="$(md5sum $image | cut -c 1-13).$(basename $image | cut -d. -f2)" fi if [ "$force" = true ]; then UPLOAD_RESPONSE=$(curl -s -X PUT "${UPLOAD_URL}/$FILENAME" \ -w "%{http_code}" \ --data-binary @"$image" \ -H "X-Custom-Auth-Key: $AUTH_TOKEN" \ -H "Overwrite:...剩余内容已隐藏
查看完整文章以阅读更多