visual-studio-code - vscode 代码运行器:在外部终端执行代码并暂停它
问题描述
我的意图是
- 使代码在外部终端中运行
- 暂停该终端,以便我可以看到结果。
在集成终端中运行代码的原始代码运行程序设置是
"code-runner.executorMap":{
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && $dir$fileNameWithoutExt",
...
}
我已经设法使用以下代码使代码在外部终端中运行:
"code-runner.executorMap":{
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start $fileNameWithoutExt.exe",
...
}
但是终端消失得如此之快,以至于我看不到结果。
我在上面的链接上尝试了第四个答案:
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && Start pwsh -Command \"& {.\\$fileNameWithoutExt.exe; pause}\"",
但它对我不起作用,因为 vscode 说:找不到与参数名称“命令”匹配的参数。
我也试过
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start $fileNameWithoutExt.exe && pause",
但外部终端仍然消失,“暂停”使集成终端暂停。
然后我尝试了
"c": "cd $dir && gcc $fileName -o $fileNameWithoutExt && start cmd /k $fileNameWithoutExt.exe"
我认为“start cmd”会打开新的命令提示符,“/k”会让它继续。
(https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/cmd)
它仍然不起作用,vscode 说:找不到接受参数的位置参数hw3.exe
。(hw3 是我的文件名)
我知道终端中有code-runner:run
- 是否在集成终端设置中运行代码,Files>Preferences>Settings>User
但我的工作区中有几个文件夹,我打算只在外部终端中为这个特定文件夹运行代码。因此,我保持检查该设置并使用该文件夹独有的settings.json 。
感谢您的时间,并保持安全!
解决方案
这应该可以解决问题:
"code-runner.executorMap":{
"cpp": "cd $dir && g++ -O2 -std=c++17 $fileName -o $fileNameWithoutExt && start cmd \"/k ; $fileNameWithoutExt\""
},
推荐阅读
- sql - 存储过程中 TreeRelation 的递归调用引发游标错误“已在使用中”
- java - 如何使用 MongoSpark 和 JavaRdd 在 Java 中执行 MapReduce
- database - 什么是存储由数亿条记录组成的彭博批量数据的好数据库?
- kubernetes - Confluent Kafka on Kubernetes 的加密、身份验证和外部访问
- npgsql - “NpgsqlBinaryImporter”不包含“取消”的定义
- html - 如何正确复制 html/css 片段
- c++ - 变量的类型不完整 std::string; string.h 有很多错误
- instagram - Instagram 图形 API 网络钩子
- sql-server - 在另一列中选择具有相同 id 但不同值的行 - SQL Server
- tensorflow - 将预训练的 Tensorflow 模型转换为 Tf-lite 时的 Nan 输出