VScode遇到python程序是通过sh文件启动的,如何调试

说明

下载的源码总会遇到这样启动的:在这里插入图片描述
并且发现shell文件内容很多,比较复杂,比如:
在这里插入图片描述

解决方案

这时候想要调试,可以通过端口连接的方式调试,具体方法如下:

  1. 在vscode调试按钮中添加远程附加调试,地址和端口选择默认(localhost,5678),得到如下配置:
    {
                "name": "Python: 远程附加",
                "type": "python",
                "request": "attach",
                "connect": {
                    "host": "localhost",
                    "port": 5678
                },
                "pathMappings": [
                    {
                        "localRoot": "${workspaceFolder}",
                        "remoteRoot": "."
                    }
                ],
                "justMyCode": true
            }
    
  2. 在shell文件中更改python启动指令:
    原来:
    python classify.py
    改为:
    python -m debugpy --listen 5678 --wait-for-client classify.py

调试时:
正常在控制台运行sh文件,等一下,然后点击vscode中的调试按钮。

注意事项

如果运行sh文件需要进入项目中某一个文件夹这种情况,比如:

cd scripts
bash run.sh

这时候我们还需要更改调试文件launch.jsonpathMappings字段的localRoot为脚本运行目录:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Python: 远程附加",
            "type": "python",
            "request": "attach",
            "connect": {
                "host": "localhost",
                "port": 5678
            },
            "pathMappings": [
                {
                    "localRoot": "${workspaceFolder}/scripts",
                    "remoteRoot": "."
                }
            ],
            "justMyCode": true
        }
    ]
}
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值