~/vscode/how-launch-config-debug-command-line-args.md

VS-Code - How to Debug and pass Command Line Arguments via Launch Config

1 min readFebruary 16, 2021by Gorav Singal#vscode
// TL;DR

Configure the args array in VS Code's launch.json to pass command line arguments when debugging a Python (or other language) project.

VS-Code - How to Debug and pass Command Line Arguments via Launch Config

Introduction

In this post, I will take example for Python project. And how we can start debugging or launch a code file by passing command line arguments.

For this, you would need launch.json. If you have, just edit it as I will discuss in this post.

To create a new launch.json, click on Run -> Open Configuratio or Run -> Add Configuration

Command Line Arguments

Lets take a look at launch.json:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: <Any_Name>",
      "type": "python",
      "request": "launch",
      "program":"${file}"

      "args": [
        "-c", "/Users/xyz/config",
        "-p", "2012"
      ]
    }
  ]
}

In above configuration, I’m passing following command line parameters:

-c /Users/xyz/config -p 2012

Note: In above configuration, it will always launch current code file and tries to execute it or debug it. In this scenario, you will always open your main code file, and start debugging from there.

Or, if you don’t want to open main file again and again, see next section.

Provide Starting point code file for Debug

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Python: Any_Name",
      "type": "python",
      "request": "launch",
      "program": "${workspaceFolder}/app.py",

      "args": [
        "-c", "/Users/xyz/config",
        "-p", "2012"
      ]
    }
  ]
}

In above configuration, I’m telling visual studio code to execute app.py file in my workspace folder.

$ subscribe --weekly

One deep dive a week, in your inbox

System design, AI engineering, trading systems and interview prep. Tested code, real numbers. Free, and you can unsubscribe any time.

or read it on gyanbyte.substack.com

Share

Related Posts

VS-Code - How to put vscode executable in system path and how to open source code directly in vscode

VS-Code - How to put vscode executable in system path and how to open source code directly in vscode

Introduction VS code is an excellent free IDE for maany types of programming…

Microsoft Visual Studio Code - Must-have extensions for Developers

Microsoft Visual Studio Code - Must-have extensions for Developers

Visual Studio Code is one of the awesome developer tools by Microsoft. Let’s…

How to solve java issue - could not load main class - Visual Studio Code

How to solve java issue - could not load main class - Visual Studio Code

Assuming you have a java project and is using Visual Studio Code as IDE. All of…

Visual Studio Code - How to associate file extension to a known programming language

Visual Studio Code - How to associate file extension to a known programming language

Problem Statement I have a drupal module, where there is a file of extension…

Claude Code Skills — Build a Better Engineering Workflow

Claude Code Skills — Build a Better Engineering Workflow

Most developers use Claude Code like a search engine — ask a question, get an…

Building an AI Voicebot for Visitor Check-In — A Practical Guide to Handling the Messy Parts

Building an AI Voicebot for Visitor Check-In — A Practical Guide to Handling the Messy Parts

Every office lobby has the same problem: a visitor walks in, nobody’s at the…

Latest Posts

How to Stay Valuable as a Software Engineer in the AI Era: A Practical Playbook

How to Stay Valuable as a Software Engineer in the AI Era: A Practical Playbook

In the previous article I argued that AI is not killing software engineering…

How to Review AI-Generated Code: A Checklist for Catching What the Model Missed

How to Review AI-Generated Code: A Checklist for Catching What the Model Missed

A few months back I approved a PR that was almost entirely AI-generated. It…

How to Debug AI-Generated Code: Understand First, Fix Last

How to Debug AI-Generated Code: Understand First, Fix Last

In the last article I wrote about reviewing AI code before it goes in. This one…

The Future of Software Engineering: What AI Changes, What Stays, and Where the Jobs Go

The Future of Software Engineering: What AI Changes, What Stays, and Where the Jobs Go

Every few weeks somebody sends me a scary headline — “AI will replace all…

The Transactional Outbox Pattern: Never Lose an Event Again

The Transactional Outbox Pattern: Never Lose an Event Again

This is one of those patterns that looks like nothing until you get burnt once…

Event Sourcing, Explained: Store What Happened, Not Just the Final State

Event Sourcing, Explained: Store What Happened, Not Just the Final State

Here is a question I like to ask in interviews: your bank account shows a…