如何在Windows Terminal的wt命令中通过命令行参数在新标签页执行Code .命令
如何在Windows Terminal的wt命令中通过命令行参数在新标签页执行Code .命令
嗨,我之前也踩过这个坑!你用-Command或者-c没效果的原因很简单:这些参数是PowerShell的专属参数,而你现在启动的是Git Bash(本质是bash shell),得用bash能识别的方式来传递要执行的命令才行。
给你修改好的完整脚本,直接替换原来的内容就行:
@echo off set "backend=C:\Users\porfavor\inc-backend" cd %backend% wt --maximized -d "%backend%\services\api" -p "Git Bash" ; -d %backend% -p "Git Bash" --tabColor #088DA5 bash -c "code .; exec bash"
我来拆解一下关键的修改点:
- 针对第二个Git Bash标签,我们添加了
bash -c "code .; exec bash":bash -c是告诉bash要执行后面引号里的命令串;code .就是你要的打开当前目录VS Code的命令;- 后面加
; exec bash是为了让Git Bash在执行完code .后不会直接退出标签页——如果不加这部分,VS Code打开后,bash进程就结束了,Windows Terminal的标签也会跟着关掉,这肯定不是你想要的效果。
如果你不想指定bash(比如怕profile路径有变化),也可以用Windows Terminal的--command参数直接指定要执行的命令串,写法是这样:
@echo off set "backend=C:\Users\porfavor\inc-backend" cd %backend% wt --maximized -d "%backend%\services\api" -p "Git Bash" ; -d %backend% --tabColor #088DA5 --command "bash -c 'code .; exec bash'"
两种写法都能达到你的需求,选哪个看你个人习惯就行~
备注:内容来源于stack exchange,提问作者sohdata
相关产品推荐
相关产品推荐

