Python 建立远程升华文本生成系统

Python 建立远程升华文本生成系统,python,sublimetext3,build-system,Python,Sublimetext3,Build System,我需要帮助设置远程构建系统 下面我介绍的构建系统在远程服务器上调用python,但问题是文件路径 我将远程服务器映射到我的W:drive,因此当我调用构建系统时,它会执行 python W:\path\to\script.py 它需要执行 python /home/me/path/to/script.py instead. 我要做的是将“\”替换为“/”和“W:”替换为“/home/me/” } 我试过两种方法的组合,但没有成功 我还硬编码了“/home/me”部分,但我仍然需要访问其他文件

我需要帮助设置远程构建系统

下面我介绍的构建系统在远程服务器上调用python,但问题是文件路径

我将远程服务器映射到我的W:drive,因此当我调用构建系统时,它会执行

python W:\path\to\script.py
它需要执行

python /home/me/path/to/script.py instead.
我要做的是将“\”替换为“/”和“W:”替换为“/home/me/”

}

我试过两种方法的组合,但没有成功

我还硬编码了“/home/me”部分,但我仍然需要访问其他文件夹,即“path/to/”

我相信答案将涉及使用“sed”,但我无法让它工作…

您可以使用基于PCRE和内置系统变量。因此,与其

\"${file}\"
plink
命令中,使用以下命令:

\"${file/w:/\/home\/me/i}\"
升华会自动将路径分隔符从
\
更改为
/
,因此我们不必担心这一点。我们所需要做的就是找到
w:
并将其替换为
/home/me
/
字符被转义为
/
也用于分隔正则表达式的不同部分)。末尾的
i
是不区分大小写的标志,因此它可以同时使用
w:
w:


我目前没有访问Windows box来测试这一点,但它应该可以正常工作。

基于@MattDMo的答案,我通过使用两个捕获组实现了这一点:一个组将驱动器号(W:)替换为项目路径(/home/me),另一个组将反斜杠替换为正斜杠。我注意到构建窗口没有正确显示分隔符,但控制台显示了分隔符

\"${file/(W:)|(\\\\)/(?1\\/home\\/me)(?2\\/)/g}\"
对但是,我(完全)不同意自动更改路径分隔符。使用您的答案,sublime正在调用“pathtoscript.py”,换句话说,路径分隔符和“W:”将被删除。我做了一些额外的转义,得到了\“${file/w:/\\\\home\\\\me/I}\”,它调用homemepathtoscript.py,但仍然没有路径分隔符。
\"${file/(W:)|(\\\\)/(?1\\/home\\/me)(?2\\/)/g}\"