O Cygwin realiza um mapeamento entre os caminhos do Windows e os caminhos que os programas do Cygwin veem. Por exemplo, seu diretório Cygwin HOME / home / John é o diretório do Windows C: \ cygwin \ home \ John. Colocar a raiz do sistema de arquivos Cygwin no diretório C: \ cygwin do Windows evita colisões entre nomes de diretórios raiz do Cygwin e nomes de diretórios raiz do Windows.
O Cygwin também mapeia os diretórios raiz das unidades do Windows para os diretórios sob / cygdrive, para que os diretórios Windows C: \ e D: \ sejam equivalentes aos diretórios / cygdrive / c e / cygdrive / d do Cygwin.
Os programas do Windows não entendem os caminhos absolutos do Cygwin e os programas do Cygwin (geralmente) não entendem os caminhos absolutos do Windows. Você pode converter entre os dois formulários usando o comando cygpath
. cygpath --help
fornece uma descrição bastante completa de seus recursos.
Seu programa python do Windows entende apenas os caminhos do Windows, portanto, para executar python /home/John/FooDir/helloworld.py
, use cygpath
da seguinte forma:
python $(cygpath -w /home/John/FooDir/helloworld.py)
Ou, sabendo o que você sabe sobre o mapeamento entre os caminhos do Cygwin e os caminhos do Windows, basta executar o script do Python da seguinte forma:
python "C:\cygwin\home\John\FooDir\helloworld.py"