WSL能够在Windows操作系统上提供原生Linux环境,方便用户进行开发和测试。为了在WSL中更方便地进入Windows目录,我们可以使用一个有趣的技巧——设置别名wcd,将其作为在WSL中进入Windows目录的目录切换命令。使用wcd命令时,只需要在其后面加上Windows路径,就可以快速进入对应的目录。请注意,Windows路径需要使用双引号或单引号括起来。
为了实现wcd别名的功能,我们需要使用towslpath.sh脚本将Windows路径转换成WSL路径,并且为该脚本赋予可执行权限。具体实现过程如下:
alias wcd='wcd(){ p=$(/usr/local/bin/towslpath.sh "$1");cd "$p";}; wcd'
这里将wcd命令设置为调用一个函数wcd,其中p变量用于存储转换后的WSL路径。towslpath.sh脚本将Windows路径转换成WSL路径,并将其存储在p变量中。最后,使用cd命令进入该目录。
towslpath.sh脚本的具体实现如下:
echo '/mnt/'${1,}|sed 's/:*\\/\//g'
这里先使用echo将路径中的首字母C\D等转小写,并且在前面拼接"/mnt/",然后使用sed正则表达式替换,将Windows路径中的":\"和"\"替换成"/",其中"\"和"/"都通过反斜杠转义。
使用上述技巧,我们可以更加便捷地在WSL中进入Windows目录,提高工作效率和便利性。为什么不直接在towslpath.sh中进入目标目录?这个问题留给大家思考。
在WSL中启用ssh服务让我们可以使用自己喜欢的ssh客户端连接到WSL进行操作,但是默认情况下,WSL中的ssh服务是未启用的。可以通过在Windows系统中添加一个vbs脚本实现WSL中ssh服务的自启动。以安装的Linux发行版Ubuntu为例,具体步骤如下:
-
创建sshstart.bat文件,并在其中输入以下