我倾向于一次打开多个批处理文件的命令提示,所以我认为新的Windows终端将是一个整洁的方式来整理标签。
问题是,我不太清楚如何将通过cmd实例运行批处理文件的默认行为更改为通过Windows终端实例内部的cmd实例运行所需的批处理文件。
我能够轻松地打开Windows终端,启动cmd实例,cd到正确的目录,并运行批处理文件。但这需要付出大量的努力。我希望能够运行一个批处理文件,并通过Windows终端内的cmd提示符使其工作。
发布于 2020-05-02 04:40:33
通过将HKEY_CLASSES_ROOT\batfile\shell\open\command
默认值从以下位置更改,可以在双击时执行此操作:
"%1" %*
至:
"C:\Users\<user>\AppData\Local\Microsoft\WindowsApps\wt.exe" -p "Command Prompt" "%1" %*
或者使用ftype
命令:
ftype batfile="C:\Users\<user>\AppData\Local\Microsoft\WindowsApps\wt.exe" -p "Command Prompt" "%1" %*
您必须使用当前的用户名目录更改<user>
,当然,此wt.exe
路径(C:\Users\<user>\AppData\Local\Microsoft\WindowsApps\
)是如果您已经从微软商店安装了Windows终端,如果您还没有安装,那么您必须找到wt.exe
的路径并使用它。Windows环境变量%LOCALAPPDATA%
和%USERPROFILE%
对我不起作用,所以我在这里使用完整路径。
您可以创建一个注册表项,使其具有使用Windows终端打开BAT
文件并使其与CMD
一起运行的选项
regedit
并导航到HKEY_CLASSES_ROOT\batfile\shell
key。wtopen
、默认值为Open with Windows Terminal
的密钥
命令提示符创建具有默认值的子键提示符:"C:\Users\\AppData\Local\Microsoft\WindowsApps\wt.exe“-p”
现在,当你右击BAT
文件时,你会有一个新的条目“用Windows终端打开”,当你点击它时,它将打开一个新的Windows终端,并带有一个运行所选批处理文件的命令提示符面板:
在Windows终端0.11.1121.0上测试
命令提示符(cmd
)配置文件的默认名称为"Command Prompt“。如果您的名称不是默认名称,则必须使用-p "<name>"
参数对其进行更改。
发布于 2020-06-27 22:14:11
我已经找了至少一年了,今天我终于找到了解决方案。在Microsoft Forum中,一位顾问说:
.Bat extension是命令提示符可执行文件格式。据我所知,它不会在新的Windows终端中支持。
幸运的是,这是错误的,我找到了一种方法来将新的Windows终端设置为默认:
只需使用以下代码创建一个.reg文件(将"Marco“替换为您的用户名)并运行它:
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\batfile\shell\open\command]
@="\"C:\\Users\\Marco\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe\" \"%1\""
您还需要编辑windows终端settings.json并更改默认值:
"startingDirectory": "%USERPROFILE%"
至
"startingDirectory": "."
如果你不这样做,它将不会工作,因为它试图在用户文件夹中运行它,而不是在当前文件夹中!
发布于 2021-04-17 07:28:50
其他答案有效,但如果Windows终端已经打开并允许脚本没有绝对路径,我也希望批处理文件作为新的选项卡打开:
打开注册表编辑器并导航到此注册表项:
Computer\HKEY_CLASSES_ROOT\batfile\shell\open\command
然后将(Default)
值修改为以下值:
wt.exe -w 0 new-tab -d . "%1" %*
其中,-w 0
参数指定在文件的当前工作目录下的new-tab
的第一个窗口或现有窗口中打开:-d .
提示:如果你设置了一个在后台静默运行的批处理文件,你不想弹出它,只需将它从.bat
重命名为.cmd
!
https://stackoverflow.com/questions/56191386
复制相似问题