bashsudo apt update
sudo apt install imagemagick # 安装图片压缩工具
cd ~
mkdir .bin # 创建个人.bin文件夹
cd .bin
vim img-upload.sh
输入下面内容到脚本中
bash#!/bin/bash
# Typora image upload script (rsync + webp)
set -e
# ===== CONFIG =====
REMOTE_USER="" # Server Username
REMOTE_HOST="" # Server Host
REMOTE_BASE="" # Server DIR
REMOTE_URL_BASE="" # Server ROOT URL
WEBP_QUALITY=85 # 图片压缩率
# ====================
for LOCAL_IMG in "$@"; do
DATE_PATH=$(date +"%Y/%m")
REMOTE_DIR="$REMOTE_BASE/$DATE_PATH"
BASENAME=$(basename "$LOCAL_IMG")
NAME="${BASENAME%.*}"
RAND=$(tr -dc 'A-Za-z0-9' </dev/urandom | head -c 4)
NEW_FILENAME="${NAME}-${RAND}.webp"
TMP_FILE=$(mktemp --suffix=".webp")
# Pic2WebP
/usr/bin/convert "$LOCAL_IMG" \
-strip \
-quality "$WEBP_QUALITY" \
"$TMP_FILE"
# SSH
/usr/bin/ssh ${REMOTE_USER}@${REMOTE_HOST} "mkdir -p '$REMOTE_DIR'"
# rsync
/usr/bin/rsync -az "$TMP_FILE" \
${REMOTE_USER}@${REMOTE_HOST}:"$REMOTE_DIR/$NEW_FILENAME"
rm -f "$TMP_FILE"
# Return2Typora
echo "${REMOTE_URL_BASE}/${DATE_PATH}/${NEW_FILENAME}"
done
在本地使用下面的命令设置与服务器之间的免密登录
bashssh-keygen ssh-copy-id <ServerUsername>@<ServerHost>
首先使用喜欢的工具(Nginx)建立Web服务器,并同上方配置在相同DIR中
安装所需工具
bashsudo apt update sudo apt install rsync
在typora的 设置-图像 中配置如下
测试通过

本文作者:XLY23333
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!