如何将 Windows 路径转换为 ​​Unix 路径?

如何将 Windows 路径转换为 ​​Unix 路径?

我想在 Ubunut (WSL) 上创建一个程序来创建文件夹和文本文档。用户可以输入路径,因为 Windows 使用另一个路径系统,我们不能直接复制和粘贴。为了方便起见,我希望 Windows 路径自动转换为 Unix 路径。通过:

read -r path;

我已准备好路径。我该如何实现这一点,我试过很多次。我也在网上搜索答案,但都没有用。转换后的路径是目的地:

cd $path

这也应该是可能的。

我希望得到有用的答案,因为我已经绝望了

答案1

通过将 Windows 路径存储为 WSL 中的 Unix/Linux 路径变量,这应该能够完成您想要的操作:

使用命令的完整路径wslpath作为子命令允许我们将“路径”作为变量读入。如果您不确定完整路径是什么,只需使用which wslpath

以下命令按顺序读取path。然后将path变量转换为 Unix 路径。然后更改为$path文件夹。

read -r path;
path=$(/usr/bin/wslpath -a "$path")
cd "$path"

例子:

terrance@Terrance-Win10:~$ read -r path;
C:\\Program Files (x86)\\
terrance@Terrance-Win10:~$ path=$(/usr/bin/wslpath -a "$path")
terrance@Terrance-Win10:~$ cd "$path"
terrance@Terrance-Win10:/mnt/c/Program Files (x86)$

相关内容