本方法起因文件系统本地文件管理是否可行?
参考这里 Windows 下实现 SiYuan Kernel 自启,和下面的批处理脚本,实现启动时切换工作空间目录,并利用 assets 特性,实现相对路径备份功能
(很抱歉没有继续深入搜索其他方案,但目前的方案特性我已经非常满足了。)
PS1:记得开启退出界面时关闭内核选项,以减少同步或备份出错。(这个是默认的)
PS2:wd 和 workspace 参数均需要,否则闪退。
PS3:测试发现,不需要开启网络伺服功能;监听地址是 http127.0.0.1:6806,不是 localhost
,不是 https
。
重要:后遗症是会修改本地配置中的工作空间目录(这也是特性)
重要:因为没有找到好的办法满足 PS1 中的退出(比如杀不了进程,没找到参数);
请使用开关网络伺服的方式达成手动退出内核(请等待 正在退出 的提示)
@ECHO OFF
::----------------------------------------------------------------------
:: siyuan-bin-is-here.manual
::----------------------------------------------------------------------
SET SIYUAN_RESOURCES_DIR=C:\Users\MBNP\AppData\Local\Programs\SiYuan\resources
::----------------------------------------------------------------------
:: siyuan-data-is-here.auto
::----------------------------------------------------------------------
SET SIYUAN_WORKSPACE_DIR=%~dp0
::eat the '\' incase Siyuan not like it.
SET SIYUAN_WORKSPACE_DIR=%SIYUAN_WORKSPACE_DIR:~0,-1%
::show sth
ECHO SIYUAN_RESOURCES_DIR=%SIYUAN_RESOURCES_DIR%
ECHO SIYUAN_WORKSPACE_DIR=%SIYUAN_WORKSPACE_DIR%
ECHO if running PID exist need to be all exit manually.
TASKLIST /FI "IMAGENAME eq Siyuan Kernel.exe" /FO LIST|FIND "PID"
ECHO when..kernel..exits..goto..backup
::manual start test
::"C:\\SiYuan\resources\kernel\SiYuan Kernel.exe" --wd="C:\\SiYuan\resources" --workspace="\\"
::-START-
CALL "%SIYUAN_RESOURCES_DIR%\kernel\SiYuan Kernel.exe" --wd="%SIYUAN_RESOURCES_DIR%" --workspace="%SIYUAN_WORKSPACE_DIR%"
ECHO kernel..exits..press any key to backup
pause >nul
cd /d %~dp0
7z a data1.zip data
pause >nul
另一个小疑问:切换工作空间后的思源云端同步,怎么起到作用呢(目前用的少)?
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于