cygwin,cygstart,windows 8 char路径的unix路径

时间:2013-07-07 19:00:29

标签: unix window cygwin

我在cygwin下使用perl来运行imagemagick和LaTeX。由于各种原因,我必须在cygstart下运行pdflatex。我在cygstart命令中有一个带空格的路径,只能使用没有空格的Windows路径正确运行

cygstart c:/stuff/pdflatex.exe c:/Users/mainho~1/Pictures/6-13/directory.tex

mainho~1" is the 8char form of "main home computer

我想要一个perl或unix函数,它需要

/cygdrive/c/Users/main\ home\ computer/Pictures/6-13/directory.tex

并将返回

c:/Users/mainho~1/Pictures/6-13/directory.tex

2 个答案:

答案 0 :(得分:1)

您可以在shell中使用cygpath命令在两种路径格式之间进行转换

从Windows路径转换为unix。

cygpath "D:\\tmp"

请注意,我使用双反斜杠,因为它需要进行转义,因为它具有特殊含义。

从unix转换为Windows

cygpath -w "/usr/bin"

答案 1 :(得分:0)

击: cygpath -m '/cygwin/c/Users 会回来的 c:/Users-m代表"混合"意味着正斜杠与卷标识符一起使用。

如果你在没有shell的情况下启动它,你应该删除单引号。

我不记得在Perl中使用单引号是否有相同之处,请亲自尝试。