我在Windows 10上使用新的本机bash。当我运行调用新bash的任务时,我试图在VSCode控制台中看到任何输出。例如,这是因为它使用cmd:
tasks.json
{
"version": "0.1.0",
"command": "WHERE",
"isShellCommand": true,
"args": [ "bash" ],
"showOutput": "always"
}
这给了我期望的结果,并将其打印到VSCode控制台:C:\Windows\System32\bash.exe
。这也向我展示了cmd可以看到bash.exe
。
现在,如果我尝试从VSCode实际运行bash,我什么也得不到。没有任何输出。如果我以独立方式启动cmd
,则以下命令将起作用:bash -help
。它将在cmd窗口中显示完整的bash帮助选项。但是这个tasks.json
不起作用:
{
"version": "0.1.0",
"command": "bash",
"isShellCommand": true,
"args": [ "-help" ],
"showOutput": "always"
}
我最初认为,VSCode用于调用cmd
的{{1}}可能不会显示bash的输出。所以我尝试了这个任务配置来查看bash是否被执行,但事实并非如此。
bash
如果我直接从{
"version": "0.1.0",
"command": "bash",
"isShellCommand": true,
"args": [ "-c", "touch \"someFile.txt\"" ],
"showOutput": "always"
}
开始bash -c "touch someFile.txt"
,它就会按预期运行。如果我使用上面的cmd
尝试它,它什么都不产生。它不会创建文件,也不会产生任何输出。
你们有没有想过为什么会这样?
答案 0 :(得分:1)
你需要更换" bash"使用" c:\\ Windows \\ sysnative \\ bash.exe"