我写了一个小函数,可以将Windows路径“转换”为OSX路径并在Finder中打开。该函数在bash下完美运行,但在zsh(我使用oh-my-zsh)下无法正常工作。
问题在于它解析特定的反斜杠组合,例如:\f,\a,\01,\02,\03等。
例如,这个路径字符串是输入:
结果应该是Finder打开:
问题在于它解析特定的反斜杠组合,例如:\f,\a,\01,\02,\03等。
例如,这个路径字符串是输入:
"\60_Project\6038_Projekt_Part\05_development\assets\img\facebook"
在翻译功能之后,\f
序列(来自img\facebook
)被错误地翻译为空格,导致输出结果如下:
"/60_Project/6038_Project_Part_developmentssets/img
acebook"
我的目标是只需粘贴 Windows 路径,不需要手动更改任何内容。
如何使用 zsh 转义或引用字符串,以获得想要的结果?
以下是我编写的代码:
function parsewinpath {
echo $1 | sed -e 's/\\/\//g'
}
function openwinpath {
echo "Opening..."
open $(parsewinpath "/Volumes/myvolume$1")
}
使用方法:
openwinpath '\60_Project\6038_Project_Part\05_development\assets\img\facebook'
结果应该是Finder打开:
/Volumes/myvolume/60_Project/6038_Project_Part/05_development/assets/img/facebook