windows下 推送blog至服务器的 方法

windows下 推送blog至服务器的 方法

H_Haozi Lv3

A 直接给出结论

ps:如果能看到这篇文章,就是推送成功了

当然,这个适合和我一样已经准备好私钥的情况下直接推送,如果是账号登录可以参考下面的链接 scp指令推送内容到服务器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# ===== Hexo + SCP 自动部署(Windows)=====

HEXO = npx hexo

# Windows OpenSSH
SCP = C:/Windows/System32/OpenSSH/scp.exe
SSH = C:/Windows/System32/OpenSSH/ssh.exe

# 服务器信息 用户名和服务器地址
REMOTE_USER = root
REMOTE_HOST = xxx.xxx.xxx.xxx

# 目录定义
REMOTE_PARENT = /www/wwwroot/blog
REMOTE_ACTIVE = $(REMOTE_PARENT)/pub
REMOTE_UPLOAD = $(REMOTE_PARENT)/public

# 本机私钥(纯路径)
KEY_FILE = C:/password/yun.pem

# SSH 参数
SSH_OPTS = -i "$(KEY_FILE)" -o StrictHostKeyChecking=accept-new

.PHONY: help build test-ssh backup upload switch push deploy

help:
@echo Available targets:
@echo make test-ssh - 测试免密连接
@echo make build - 仅本地构建
@echo make push - 构建并发布
@echo make deploy - 同 push

# 1) 本地构建
build:
$(HEXO) clean
$(HEXO) g
$(HEXO) d

# 2) 测试 SSH
test-ssh:
"$(SSH)" $(SSH_OPTS) $(REMOTE_USER)@$(REMOTE_HOST) "echo SSH OK"

# 3) 备份远端 pub -> pub_时间戳
backup:
"$(SSH)" $(SSH_OPTS) $(REMOTE_USER)@$(REMOTE_HOST) "mkdir -p '$(REMOTE_PARENT)' && if [ -d '$(REMOTE_ACTIVE)' ]; then ts=$$(date +%Y%m%d_%H%M%S); mv '$(REMOTE_ACTIVE)' '$(REMOTE_PARENT)/pub_'\"$$ts\"; fi"

# 4) 上传本地 public 到远端父目录
upload:
"$(SCP)" $(SSH_OPTS) -r public $(REMOTE_USER)@$(REMOTE_HOST):$(REMOTE_PARENT)/

# 5) 远端 public 改名为 pub
switch:
"$(SSH)" $(SSH_OPTS) $(REMOTE_USER)@$(REMOTE_HOST) "if [ -d '$(REMOTE_UPLOAD)' ]; then mv '$(REMOTE_UPLOAD)' '$(REMOTE_ACTIVE)'; else echo 'upload failed: $(REMOTE_UPLOAD) not found'; exit 1; fi"

# 一键发布
push: build backup upload switch
@echo Deploy done.

deploy: push

然后再本地更新完博客就能更方便的推送啦,直接make push

ps:如果make指令无法使用,检查是否安装了MinGWmsys64,如果安装了,添加其的bin文件至系统环境变量,然后修改这两个工具bin文件下的mingw32-make.exe文件,直接修改成make.exe即可

也可以直接用mingw32-make push 指令

完结撒花~

留言

有问题请指出,你可以选择以下方式:

  1. 在下方评论区留言
  2. 邮箱留言
  • Title: windows下 推送blog至服务器的 方法
  • Author: H_Haozi
  • Created at : 2026-03-15 21:22:00
  • Updated at : 2026-03-20 22:10:51
  • Link: https://blog.haozi-haozi.cn/2026/03/15/blog_daily_pushblog/
  • License: This work is licensed under CC BY-NC-SA 4.0.
Comments
On this page
windows下 推送blog至服务器的 方法