cygwin是否期望类似Linux的路径或类似Windows的路径

时间:2015-05-03 00:46:12

标签: shell batch-file cygwin

我在使用cygwin时遇到了一些麻烦。

我在这里有几个问题

  1. 说我转换为shell脚本的批处理脚本 cygwin采用两个命令行参数,最初是

    set_value('order',$default_order)

    当我将这些参数传递给shell脚本时,我仍然给出了 在命令行参数之上,或者,我是否给出了cygwin路径,例如

    mybatchfile.bat -i "C:\Users\astro\panam\input" -o "C:\Users\astro\panam\output"
    
  2. 说,我在我的批处理文件/脚本中硬编码了几条路径, 这些应该是类似Windows的路径,例如 myscript.sh -i /cygdrive/c/users/astro/panam/input -o /cygdrive/c/users/astro/panam/output ,或者这些应该是cygwin这样的路径 如C:\Users\astro\panam\somepath
  3. 说,我的shell脚本如下所示

    /cygdrive/c/users/astro/panam/somepath

    执行脚本后,这就是我得到的

    path1="C:\\Users\\astro\\panam\\Doppler\\Workspace"
    path=$path1"\\test.java"
    echo $path
    

    因此,我的所有路径都不起作用。

1 个答案:

答案 0 :(得分:0)

从Cygwin 1.7.x开始,它只适用于POSIX路径名。

另一方面,Windows也可以使用正斜杠。使用反斜杠只会让你产生无限的痛苦,因为它是shell转义字符。

Cygwin有一个方便的实用程序,可以将Windows路径转换为POSIX路径,反之亦然。要了解它能做什么:

man cygpath