#path #wsl #convert #windows

wslpath2

将 Windows 路径转换为 WSL 路径,反之亦然

2 个版本

0.1.1 2023 年 3 月 5 日
0.1.0 2023 年 3 月 4 日
0.0.1 2023 年 3 月 4 日

#1171 in 文件系统


用于 vscli

MIT 许可证

8KB
85

wslpath2

MIT License Crates.io rust docs Continuous integration

您可以使用 wslpath2 将 WSL 路径转换为 Windows 路径,反之亦然。内部它调用 wslpath 工具,这是一个由微软创建的基于 Linux 的工具,用于转换 Windows 和 Linux 路径。这是通过 WSL 命令调用的,因此它可以在 Linux(在 WSL 内部)以及 Windows 上工作。

关于此分支

这是由 pratikpc 编写的 wslpath 的分支,以下是一些更改:

  • 使用 Rust 2021 版本
  • 添加了设置枚举,以更紧密地映射到 wslpath.exe 的命令行参数
  • 更新到 wslpath.exe 的最新版本
  • 错误处理得到改善

用法

主要函数是 convert,它具有以下签名

pub fn convert(
    path: &str,
    distro: Option<&str>,
    options: Conversion,
    force_absolute_path: bool,
) -> Result<String, Box<dyn std::error::Error>>

用法示例

    // Convert WSL path to Windows
    let path = convert("/mnt/c/Users", None, Conversion::WslToWindows, false).unwrap();
    println!("WSL Path converted to Windows is {}", path);
    // OUTPUT is WSL Path converted to Windows is C:\Users

    // Convert Windows path to WSL
    let path = convert("C:\\Users", None, Conversion::WindowsToWsl, false).unwrap();
    println!("Windows Path converted to WSL is {}", path);
    // OUTPUT is Windows Path converted to WSL is /mnt/c/Users

还可以查看 示例文件夹 以获取更多示例。

无运行时依赖