我正在编写一个正在cygwin中执行的python脚本。它做的一件事就是调用pg_dump并传递一个文件名。我的问题,python / cygwin传递了一个posix路径,而pg_dump的windows版本不知道如何处理它。有什么东西我可以调用将我的posix路径转换为Windows路径吗?
我想转换此路径
/cygdrive/c/Users/me/Code/myproj/pyBuildScript/src/snapshooter/working/sso.sql
到
c:\Users\me\Code\myproj\pyBuildScript\src\snapshooter\working\sso.sql
答案 0 :(得分:3)
cygpath -w
您可以阅读手册页以获取更多开关。其中
你需要小心转义,确保path参数是一个shell字。
答案 1 :(得分:1)
您可以执行以下操作:
>>> posix_str = "/cygdrive/c/Users/me/Code/myproj/pyBuildScript/src/snapshooter/working/sso.sql"
>>> nt_str = "C:" + posix_str[11:]
>>> nt_str = nt_str.replace("/", "\\")
>>> print nt_str
C:\Users\me\Code\myproj\pyBuildScript\src\snapshooter\working\sso.sql