Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2024/07-02——质疑 wsl 到使用 wsl #165

Open
HannibalKcc opened this issue Jul 21, 2024 · 0 comments
Open

2024/07-02——质疑 wsl 到使用 wsl #165

HannibalKcc opened this issue Jul 21, 2024 · 0 comments

Comments

@HannibalKcc
Copy link
Owner

HannibalKcc commented Jul 21, 2024

wsl

很早就听说 wsl 的大名了,但看着充满专业术语的官方文档,我并没有理解它的使用场景,只知道 wsl2 解决了不少上一代的大问题,变得更加 傻瓜式 了。

直到我某天尝试运行某个社区库,按照文档啪啪啪操作并没有成功运行起来,排查分析是因为我使用的 windows 系统路径分隔符与 unix 系统的并不相同。

windows 与 unix 的分歧历史

api 的差异自然没必要多说,window 使用 where nodeunix 使用 which node

换行符的不同

阮一峰 CL RF 的历史由来

Linux 系列操作系统中每行结尾是:\n

Windows 操作系统每行结尾:\r\n

老的Mac系统(Mac OS, OS X): \r

新的Mac系统(macOS):\n

如果你的文件是 CLRF 结尾的,在部分极端情况下用 unix 运行就会错误。比如报错 env: node\r: No such file or directory

文件路径分隔符的不同

unix 使用的 /,比如 a/b/c

win 使用 \,比如 a\b\c,要特别注意的是这进针对文件路径分隔符,别忘了我们在 win 上访问网页也是 baidu.com/home/:id 这样的形式;在 win 上编写的代码引入文件也是 require('@/imgs/a.png') 的。

但是当你使用 path.resolve('a', 'b', '..', 'c') 的时候,2个操作系统就不一样了

太复杂了,用 wsl 吧!

RT

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant