通过使用VSCode(Visual Studio代码),我在本地Python(Anaconda)解释器上执行Python代码。现在,我想对其进行设置,以便能够在远程Python解释器上执行该代码。
我有一个具有自己的Python且可以通过ssh访问的Linux设备。
可以配置吗?如果可以,怎么办?
谢谢。
答案 0 :(得分:4)
虽然Microsoft致力于在VSCode中正式实现此功能(请参阅:https://github.com/Microsoft/vscode-python/issues/79),但我个人正在使用tasks.json
中定义的以下任务在远程计算机上运行Python。它包含两个任务:(1)使用rsync将代码同步到远程计算机; (2)在远程解释器中通过SSH执行代码。请注意,执行任务dependsOn
是同步任务,因此始终从最新的本地副本执行代码。
{
"version": "2.0.0",
"tasks": [
{
"label": "Synchronize Code",
"type": "shell",
"command": "rsync -axv --exclude-from=rsync-exclude.lst --max-size=5MB \"${workspaceFolder}\" user@hostname:dev/code-sync/",
"problemMatcher": [],
"isBackground": true,
"presentation": {
"echo": false,
"reveal": "silent",
"focus": false,
"panel": "shared",
"clear": false
}
},
{
"label": "Remote Execute",
"type": "shell",
"command": "ssh -n user@hostname \"source ~/.profile && source /path/to/virtualenv/bin/activate && python ~/dev/code-sync/${workspaceFolderBasename}/${relativeFile}\"",
"dependsOn": [
"Synchronize Code"
],
"problemMatcher": []
}
]
}
请注意,您还可以为执行任务分配键绑定,以便您可以通过一次按键在遥控器上执行Python代码。添加到keybindings.json
:
{
"key": "cmd+shift+r",
"command": "workbench.action.tasks.runTask",
"args": "Remote Execute"
}