Cygwin有cygpath
:
$echo $(cygpath -pw "/cygdrive/c/users/bob/test")
$C:\users\bob\test
如何在Windows上的Bash上实现相同的目标?
答案 0 :(得分:2)
Windows驱动器位于/mnt
目录下,c:/
位于/mnt/c
且d:/
位于/mnt/d
因此,您可以使用以下函数(将函数放在.bashrc文件中)
function windir() {
pwd | sed -E 's+^/mnt/(.{1})+\1:+' | sed 's+:$+:/+1'
}
第一个sed命令将“/ mnt / c”转换为“c:”(或d:或驱动器号是什么)。第二个sed命令处理根目录的特殊情况。我确信有更优雅的方法可以做到这一点,但这似乎有效。