将Unix路径转换为DOS路径

时间:2009-03-13 12:33:09

标签: unix shell string dos ksh

我有一个存储Unix路径的变量,例如:

typeset unixpath=/foo/bar/

我必须使用KornShell(ksh)脚本将其转换为DOS路径:

dospath=\\\\foo\\\\bar\\\\

4 个答案:

答案 0 :(得分:2)

尝试:

dospath=`echo $unixpath | sed 's/\//\\\\/g'`

感谢David Wolever提醒我使用$来访问变量的值!

答案 1 :(得分:1)

如果你有 ksh93

ksh-M 93t 2008-11-04$ unixpath=/foo/bar/            
ksh-M 93t 2008-11-04$ print ${unixpath//\//\\\\\\\\}
\\foo\\bar\\

答案 2 :(得分:1)

AT& T ksh93 for Windows允许您标记变量以进行自动转换 'typeset -H':

$ typeset -H home = $ HOME&& print $ home = $ HOME C:\用户\亨克= /家庭/亨克

答案 3 :(得分:0)

我会添加评论作为对eleven81的答案,但我没有分数

使其更具可读性,如何使用替代的sed分隔符

dospath=`echo $unixpath | sed 's./.\\\\.g'`