VSCode 官方自己的插件就是這樣執行命令的. 使用體驗 比 默認的終端 好太多了.
重用終端,
Shell 集成 ,
按任意鍵關閉,
任務是否成功,
左側命令操作 (菜單中功能很多)
等
import * as vscode from 'vscode';
// 執行的命令
let command_str = "npm run dev"
// 工作目錄
let cwd = "D:\\Work\\JsProject\\nodejs-demo"// 創建 Task
const task = new vscode.Task({ type: "shell" }, // 任務類型vscode.TaskScope.Workspace, // 作用域"我的任務", // 任務名稱 (自定義)"my-app", // 源名稱 (自定義)new vscode.ShellExecution(command_str, {cwd: cwd, // 執行命令,并設置工作目錄 (重要)(起到了切換目錄的作用,默認是當前 vscode 的工作目錄)}),
);
// 配置終端行為(關鍵:重用同一面板)
task.presentationOptions = {reveal: vscode.TaskRevealKind.Always, // 始終顯示終端panel: vscode.TaskPanelKind.Shared, // 共享終端面板clear: false, // 不清空歷史
};
// 執行任務
vscode.tasks.executeTask(task);