Hexo批处理脚本更新,通过zerotier实现免费简易内网穿透
因为不知道写啥,就更新一些以前的东西吧
- Hexo批处理脚本
原文:使用批处理和Joplin执行并优化Hexo博客工作流程
更新脚本内容: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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129@echo off
setlocal EnableDelayedExpansion
goto start
:ac
rem 请设置%targetlable%变量,以确保正常跳转至目标位置
cls
color 0F
goto %targetlabel%
:start
if "%targetlabel%"=="" (set "targetlabel=start"&&goto ac)
echo ------------------------------------------------
echo 1.【完整】执行完整的检查和推送blog流程
echo 2.【快速】快速上载blog
echo 3.【预览】本地预览
echo 4.单独执行指令
echo 5.【标准】执行快速标准推送
echo 6.【本地部署】执行标准推送,但部署到本地而非GitHub
echo ------------------------------------------------
echo.
choice /c 123456
if "%errorlevel%"=="6" goto ldeploy
if "%errorlevel%"=="5" goto std
if "%errorlevel%"=="4" goto new
if "%errorlevel%"=="3" (set "targetlabel=local"&&goto ac)
if "%errorlevel%"=="2" (set "targetlabel=fast"&&goto ac)
if "%errorlevel%"=="1" (set "targetlabel=full"&&goto ac)
pause&exit
:ldeploy
REM 这一段是部署在本地,也就是复制一遍;可以根据情况改成复制到共享文件夹中
echo.
echo ------------------------------------------------
echo 清理缓存...
cmd /c "hexo clean" >nul
echo 生成页面...
cmd /c "hexo g" >nul
echo 复制必要资源...
cmd /c "xcopy D:\blog\source\_posts\_resources D:\blog\public\blog\_resources\ /e /s /y" >nul
echo 部署到本地服务器路径...
cmd /c "xcopy D:\blog\public\ D:\server\blog1\ /e /s /y" >nul
echo 上传结束,打开网页中...
cmd /c "start C:\Users\zjxdiu\Downloads\实时工具\hfs.exe"
start http://127.0.0.1/
echo ------------------------------------------------
echo 完成,按任意键退出...
pause
exit
:std
echo.
echo ------------------------------------------------
echo 启动本地预览...
cmd /c "hexo clean & hexo g & xcopy D:\blog\source\_posts\_resources D:\blog\public\blog\_resources\ /e /s /y & echo 2>D:\blog\.deploy_git\.nojekyll & start http://localhost:4000/ & hexo s"
echo ------------------------------------------------
echo 上载到远程服务器...
echo ------------------------------------------------
cmd /c "hexo d"
echo ------------------------------------------------
echo 完成,按任意键退出...
pause
exit
:new
echo 正在创建新的cmd实例...
echo ------------------------------------------------
echo 命令提示:
echo hexo clean
echo hexo g
echo hexo s
echo hexo d
echo ------------------------------------------------
start cmd
echo 按任意键返回菜单...
pause >nul
set "targetlabel=start"&&goto ac
:local
echo ------------------------------------------------
echo 本地预览模式
echo ------------------------------------------------
echo 启动预览...
cmd /c "hexo clean & hexo g & xcopy D:\blog\source\_posts\_resources D:\blog\public\blog\_resources\ /e /s /y & echo 2>D:\blog\.deploy_git\.nojekyll & start http://localhost:4000/ & hexo s"
echo 按任意键返回菜单...
pause >nul
set "targetlabel=start"&&goto ac
:fast
echo ------------------------------------------------
echo 快速上载blog
echo ------------------------------------------------
cmd /c "hexo clean & hexo g & xcopy D:\blog\source\_posts\_resources D:\blog\public\blog\_resources\ /e /s /y & echo 2>D:\blog\.deploy_git\.nojekyll & hexo d"
echo ------------------------------------------------
echo 完成,2秒后退出...
ping localhost -n 3 >nul
exit
:full
echo ------------------------------------------------
echo 完整流程向导
echo 按0为确定,按1为跳过
echo ------------------------------------------------
goto clean
:clean
echo 第一步:清理缓存
choice /c 01
if "%errorlevel%"=="2" goto generate
cmd /c "hexo clean"
goto generate
:generate
echo ------------------------------------------------
echo 第二步:生成页面
choice /c 01
if "%errorlevel%"=="2" goto check
cmd /c "xcopy D:\blog\source\_posts\_resources D:\blog\public\blog\_resources\ /e /s /y & echo 2>D:\blog\.deploy_git\.nojekyll & hexo g"
goto check
:check
echo ------------------------------------------------
echo 第三步:本地预览
choice /c 01
if "%errorlevel%"=="2" goto deploy
start http://localhost:4000/
cmd /c "hexo s"
goto deploy
:deploy
echo ------------------------------------------------
echo 第四步:上传到远程服务器
choice /c 01
if "%errorlevel%"=="2" goto done
cmd /c "hexo d"
goto done
:done
echo ------------------------------------------------
echo 流程已完成,按任意键返回菜单...
pause >nul
set "targetlabel=start"&&goto ac
- Zerotier内网穿透
网上有一些教程,但是不够简洁易懂,所以写一个。
- 进入官网控制台注册一个账号,可以不用现场注册,直接微软账号登录即可。
- 选择 Create A Network
- 点击刚创建的网络,进入配置界面
- Name随便写一个方便你记的名字
- Description是介绍,可以写详细信息,如果以后忘了网络是干啥的可以看这个回顾
- Access Control建议选Private,这样你就拥有完全的管理权限
- 下面的IP直接自动即可,或者手动选一个跟你目前局域网IP不冲突的地址段
- IPv6 Auto-Assign根据情况选择,如果你们的网络成员都具有广域网ipv6连接则勾选第一项,否则不管
- 最后复制Network ID,就是一串数字和字母组成的字符串,发给你的成员
【以上步骤只需要网络管理员进行,成员不需要】
【以下内容每个人都要执行】
- 下载Zerotier:下载链接
- 安装并从开始菜单里启动
- 等任务栏出现程序图标,右键,选择Join New Network
- 输入刚才的Network ID,确定
- 如果弹出询问弹窗,例如防火墙、是否启用网络发现等,均允许
- 等待几分钟,进入系统设置检查IP是否获取成功
- 分配成功说明连接成功,否则继续等待
- 【重要】任意成员加入网络时,需要进入官网控制台给成员左侧的Auth打勾,只有打勾的成员才能获取到IP并加入网络,否则无法连接
- 在控制台页面可以看到每个人的虚拟局域网IP,这个地址一旦分配就不会自动更改,因此你甚至可以做个DNS记录方便大家记()
- ping一下成员的IP,确定连接通顺
- 完成!现在你们已经相当于在一个局域网里了,只不过游戏房间和服务器可能不会自动查找到,手动输入地址即可。
查询精神状态
最近玩LLM有点上瘾,推荐一个chatGLM项目Github地址,可以部署在本地运行的对话机器人,这个62亿参数的模型只需要6G显存就能运行(当然,是N卡),可以说非常好玩了()
还想换个主题,或者再开一个功能更全面一些的,这个极简博客就当正式文章和简历发布地点。
就这样吧,最近作业很多但是都写完了,没有压力就没有折腾的欲望和动力(T_T)
Hexo批处理脚本更新,通过zerotier实现免费简易内网穿透
https://zjxdiu.github.io/blog/随记20230501/