PowerShell中如何实现前置临时变量执行命令的等效操作
PowerShell下等效启动调试版VSCode的命令实现
(抱歉标题表述欠佳,我确实对该相关语法不甚了解)
我手头有一条推测为Unix环境下的命令,作用是启动带调试参数的VSCode:
TSS_DEBUG=5667 code --user-data-dir ~/.vscode-debug/
我需要找到这条命令在Windows PowerShell中的等效写法。
此前我尝试执行过以下命令,但执行后无法正常启动调试版本的VSCode:
set TSS_DEBUG=5667; code --user-data-dir ~/.vscode-debug/
另外我还有一个疑问:命令里的TSS_DEBUG属于什么类型的变量?我猜测它并非全局环境变量,因为它仅对后方跟随的单条命令生效。
验证可行的解决方案
感谢用户mklement0及关联重复问题的指引,经实际测试,PowerShell环境下可以正常生效的命令写法如下:
$env:TSS_DEBUG=5667; code --user-data-dir ~/.vscode-debug/
补充说明
- 之前尝试的
set TSS_DEBUG=xxx写法是Windows CMD命令行的语法,在PowerShell中不生效,因此会出现启动失败的问题。 - Unix类Shell中
变量名=变量值 待执行命令的写法,定义的是仅对当前启动的单条命令进程生效的临时环境变量,不会修改全局环境变量、也不会在当前Shell会话中长期保留;PowerShell中通过$env:变量名=值的方式赋值后立刻启动目标程序,和Unix下的语法效果完全一致:TSS_DEBUG参数只会传递给本次启动的VSCode进程,不会影响其他程序或系统全局配置。
内容的提问来源于stack exchange,提问作者Page not found
相关产品推荐
相关产品推荐

