
wsl2 + Ubuntu 18 ,本来是为了解决 Docker 不能自启,折腾了个半天装了个 zsh
「折腾」莫名其妙得解决了 wsl2 内 Docker 的自启动_电脑网络_沉冰浮水:
https://www.wdssmq.com/post/20140328160.html
Docker 自启目测是解决了,但是今天跑 node 项目又不行了。。
/usr/bin/env: ‘bash\r’: No such file or directory
目前切换回 bash 可以恢复 npm 执行。
我的需求就是 1 、Docker 能正常自启; 2 、不影响其他使用;
zsh 之前隐约看到过推荐,有啥优点目前也不清楚,并不是特别需要用。。
1 ysc3839 2022-04-08 11:53:15 +08:00 bash\r 这个一看就是文件的换行符使用了 CRLF ,其中的 CR 被当成了行内的字符作为参数传递了 |
2 Vegetable 2022-04-08 11:55:00 +08:00 请直接使用 docker desktop for windows with wsl2 backend |
3 ScepterZ 2022-04-08 11:56:29 +08:00 win 现在也都支持\n 换行了,建议统一都用\n ,git 的也配置一下不要给转换了 你之前能用估计是 bash 默认处理了\r\n ,zsh 没有 |
4 liubaicai 2022-04-08 12:03:38 +08:00 请直接使用 docker desktop for windows with wsl2 backend +1 |
5 wdssmq OP |
6 liubaicai 2022-04-08 14:55:09 +08:00 @wdssmq 不是对接那个,也不是另外安装子系统,是用的当前子系统装的,(可能会跟你已经装的冲突),建议删除 wsl 里装的,直接用 windows 安装,装完后在 wsl 也能用,自带自启动 |
7 bootvue 2022-04-08 15:01:20 +08:00 zsh 中 * 属于特殊字符 加个单引号 '*' 试试 |
8 bootvue 2022-04-08 15:09:17 +08:00 @bootvue 回复了个鸡儿 zsh 可以卸载掉 换回 bash 或者装个 my-zshell 试试 还是在虚拟机里泡 docker 比较好 |
9 SilenceLL 2022-04-08 15:27:57 +08:00 docker desktop 不能商用。。 |
11 thedrwu 2022-04-08 16:57:03 +08:00 via Android 1. zsh 和 posix shell 的 glob 失败规则不太一样 2. 像是 CRLF 的锅 听人吹 zsh 和 fish 就如听人强调自己用 Arch 一样 |
12 wdssmq OP wsl -l -v NAME STATE VERSION * Ubuntu-18.04 Running 2 docker-desktop Running 2 docker-esktop-data Running 2 安装 docker desktop 后会这成这样。。 |
13 psyngw 2022-04-08 17:39:43 +08:00 我记得我好像遇到过类似的情况。给个思路 你看下在 zsh 里 echo $PATH 是不是混了 Windows 的路径进去了,调用位置出错了。 是的话 $ sudo vim /etc/wsl.conf [interop] appendWindowsPath = false 重启 wsl 看看。 或者自己在 zshrc 里按需处理一下 $PATH 看看(比如你需要用到 `code .`之类的必须导入 path) 或者用 nvm 哈哈 |
14 aloxaf 2022-04-08 17:46:06 +08:00 哎,所以说要看一手资料 你引用的那篇博客引用的英文博客原文,明明强调了「 Please note, I’m using the zsh shell. If you’re using bash (like most people), you’ll need to change .zshrc by .bashrc.」,结果到这篇博客就变成必须使用 zsh 了,然后到你这再折腾一轮…… |