You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows 10中Bash与Ubuntu终端的区别及部署操作咨询

WSL中Bash和Ubuntu终端的区别及使用建议

嘿,我来帮你理清楚这两个终端的差异,还有针对你的需求该怎么选~

二者核心区别

其实这俩都是WSL(Windows Subsystem for Linux)里的终端,核心差异就在默认启动的工作目录和环境侧重

  • Bash终端:启动后直接落在Windows的/mnt/c/Windows/System32路径下,这个路径是WSL把Windows C盘的System32目录挂载过来的,相当于一打开就扎进了Windows的系统文件夹里,更偏向于快速和Windows文件系统交互。
  • Ubuntu终端:启动后默认进入WSL Ubuntu系统的用户主目录~,这里显示root@myname-PC:~#说明是用root用户启动的,普通用户的话是/home/你的用户名),这个是完全在Ubuntu的Linux原生文件系统里,和Windows文件系统相对独立,你可以通过/mnt/c这类路径访问Windows文件,但本身的环境是纯Linux的。

针对你的需求该选哪个?

你要安装Git、Utils、RVM(Ruby),还要克隆Git项目、用SSH+Capistrano部署——这些都是典型的Linux环境下的开发部署操作,必须选Ubuntu终端

原因很简单:

  • 像RVM这类Ruby版本管理工具,还有Git的一些高级特性,都是为Linux/Unix环境设计的,在WSL的Ubuntu里安装和运行兼容性更好,不会出现Windows下的各种奇怪报错。
  • 部署操作依赖Linux的环境变量、文件权限系统,在Ubuntu的原生文件系统里操作,能避免Windows和Linux文件系统之间的权限冲突、换行符(LF/CRLF)问题。

操作路径建议

绝对不要在system32或者Windows的C:/目录(对应WSL里的/mnt/c/...路径)下执行这些命令!

你应该在WSL Ubuntu的原生文件系统里操作,比如:

  1. 直接在主目录~下创建工作文件夹:mkdir ~/dev_projects
  2. 进入这个文件夹:cd ~/dev_projects
  3. 然后在这里克隆项目、安装工具、执行部署命令。

这样做能保证你的Linux工具运行稳定,也不会搞乱Windows的文件权限~

内容的提问来源于stack exchange,提问作者Freelensia

火山引擎 最新活动