从 Visual Studio 代码更改 powershell 中的当前工作目录

Change current working directory in powershell from Visual Studio Code

使用 VS Code 调试 Python 时,我使用 windows 终端和 PowerShell 作为我的外部终端。对于正常使用,我将 PowerShell 中的起始目录设置为 %USERPROFILE% (C:\Users\username),但是当 运行ning python 代码时,我需要将起始文件夹更改为 %__CD__% (C:\Windows\system32) 以便当前工作目录与我 运行ning 中的 python 文件相同。 (多亏了测试,我发现这就是它的工作方式。)在使用 python 处理文件时,这是必需的。但是,由于实用性和个人喜好,我不想将 PowerShell 设置中的 startingDirectory 设置更改为 %__CD__%

所以我的问题是,是否可以暂时将 PowerShell 的 startingDirectory 设置从 VSCode 设置为 运行 代码?因此,当我出于任何其他非调试原因打开 WT 时,起始目录是 %USERPROFILE%.

这些是我的 VS Code 启动配置:

"launch": {
    "configurations": [
            {
                "name": "Python: Integrated Terminal",
                "type": "python",
                "request": "launch",
                "program": "${file}",
                "cwd": "${fileDirname}",
                "console": "integratedTerminal"
            },
            {
                "name": "Python: External Terminal",
                "type": "python",
                "request": "launch",
                "program": "${file}",
                "console": "externalTerminal"
            }
    ]
},
"terminal.external.windowsExec":"wt -p cmd cmd",

这是我的 PowerShell 配置:

{
   "colorScheme": "One Half Dark",
   "commandline": "powershell.exe",
   "fontFace": "Consolas",
   guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
   hidden": false,
   name": "Windows PowerShell",
   startingDirectory": "%USERPROFILE%",
   tabTitle": "PowerShell"
}

感谢您的任何建议。

谢谢Michael Z and la-dispute。将您的建议作为答案发布,以帮助其他社区成员。

您可以尝试以下两种方式解决问题:

  1. 打开包含您的代码的文件夹并将其另存为工作区。然后输入 CTRL+SHIFT+P -> "Workspace Settings (JSON)",在该工作区内将“Launch”的 CWD 设置为目标目录

  2. 配置 powershell 配置文件类型

    $profile 
    New-Item -path $profile -type file –force  
    

    在终端 window 中,它会给你一个 link 的 PowerShell 配置文件 地点。打开该文件并添加

    set-location "file path, for example C:\Windows\system32"

    保存文件并重新加载 vscode!

可以参考Managing Current Location, and vscode does not set current directory in the terminal if a powershell $PROFILE also sets current directory