Python 建立远程升华文本生成系统
我需要帮助设置远程构建系统 下面我介绍的构建系统在远程服务器上调用python,但问题是文件路径 我将远程服务器映射到我的W:drive,因此当我调用构建系统时,它会执行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:\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}\"