Pergunta

Eu tenho uma variável que armazena um caminho Unix, por exemplo:

typeset unixpath=/foo/bar/

E eu tenho que convertê-lo para um caminho DOS usando KornShell scripting (ksh):

dospath=\\\\foo\\\\bar\\\\
Foi útil?

Solução

Tente:

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

Graças ao David Wolever por me lembrar de usar um $ para acessar o valor da variável !

Outras dicas

Se você tiver ksh93 :

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

O ksh93 AT & T para Windows permite variáveis ??de tag para a conversão automática com 'Typeset -H':

$ typeset -H casa = $ HOME && print $ home = $ HOME C: \ Users \ Henk = / home / Henk

Eu teria adicionado como um comentário à resposta de eleven81, mas eu não tenho os pontos

para torná-lo um pouco mais legível, como sobre o uso de uma alternativa sed delimitador

i.

dospath=`echo $unixpath | sed 's./.\\\\.g'`
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top