jekyll 写博客,在_post 中添加了 md 文件,主页不显示新加的 post

2019-05-28 03:27:31 +08:00
 good1uck
jekyll 装在 wsl 里 kali 版。
默认的那个 post 可以修改且正常显示。但要手动重启服务,auto-regeneration 显示 enabled,实际无效果。
折腾了大概几个小时,还是没成功

1.格式原因排除了。直接复制粘贴后改内容,还是只有默认的那个 post 可以在首页显示。
2.不知道是 wsl 的坑还是 jekyll 的坑。新建的文件是在 linux 外新建的,说到这里好像这个可以去试一试
3.救我
1547 次点击
所在节点    问与答
11 条回复
geelaw
2019-05-28 03:29:56 +08:00
可能已经没救了。通过 Win32 本地文件 API 访问 WSL 内容对 WSL 来说是未定义行为,正确的访问方式是通过 \\wsl$\ 访问,或者让 WSL 通过 /mnt/DriveLetter/ 访问 Win32 内容。
good1uck
2019-05-28 03:30:15 +08:00
关于文件新建:wsl 官网没有提供相应的 linux 文件系统在 windows 下的绝对路径,我自己用 everything 找到了。然后用 windows 的方式新建了文件。

还没有尝试用 linux 的方式新建,可能会解决问题也可能不会
newton108
2019-05-28 03:32:53 +08:00
你是不是日期有问题? post 日期貌似要比机器时间早才能显示。
good1uck
2019-05-28 03:39:04 +08:00
@geelaw 好像确实做了官方没有定义的操作。我直接找到了官方没有定义的绝对目录..然后在里面右键新建了文件
@newton108 我去试试,虽然之前在配置文件里添加了 future:true
good1uck
2019-05-28 03:42:31 +08:00
我尝试删空了_post 文件夹,重启服务后依然显示那个默认的帖子。??
geelaw
2019-05-28 03:45:57 +08:00
@good1uck #4 那个目录是固定位置的,但是在里面用 Win32 API 是错误的,这跟乱改软件的配置文件是一样的,因为那个目录是属于那个 WSL 发行版,而不是用户的。
good1uck
2019-05-28 03:47:44 +08:00
@geelaw 请教,\\wsl$\是什么操作,官方找不到。。
good1uck
2019-05-28 03:51:19 +08:00
@geelaw 我觉得像是没有同步更新目录,因为我重开了 wsl 后,ls 就显示了目录文件变更。总之还是没有定义的操作.自己挖的坑
geelaw
2019-05-28 03:56:57 +08:00
@good1uck #7 这是 version 1903 起的新功能。

#8 技术细节上的原因和推理论证上的原因是两码事。
good1uck
2019-05-28 04:22:51 +08:00
@geelaw 其实开始的想法是用 vi 改文件太麻烦,看到官方说可以在 wsl 里打开 windows 程序比如 atom.exe 。但是并不会在 wsl 的当前目录下启动 atom.exe 而是在配置好的环境变量绝对路径中启动 atom.exe 。导致不能用 atom.exe 打开 wsl 里的 md,如果文件系统在 windows 里的绝对路径对我来说是不应该知道的话...
good1uck
2019-05-28 04:29:57 +08:00
@newton108 已经确定了是 wsl 的天坑了,和互操性&文件系统有关。简单的说就是目录不同步。如果我在 windows 找到了 wsl 的文件目录,然后新建,然后回到 wsl 终端里用 ls 看,不会看到有变更。需要重开一下 wsl

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/568212

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX