shell - Electron:运行带参数的 shell 命令
问题描述
我正在构建一个电子应用程序,
我可以使用 shell api ( https://electronjs.org/docs/api/shell )很容易地运行 shell 命令
此命令运行完美,例如:
shell.openItem("D:\test.bat");
这个不
shell.openItem("D:\test.bat argument1");
如何使用参数运行电子外壳命令?
解决方案
shell.openItem
不是为此而设计的。从核心模块
使用spawn
NodeJS 的功能。child_process
let spawn = require("child_process").spawn;
let bat = spawn("cmd.exe", [
"/c", // Argument for cmd.exe to carry out the specified script
"D:\test.bat", // Path to your file
"argument1", // First argument
"argumentN" // n-th argument
]);
bat.stdout.on("data", (data) => {
// Handle data...
});
bat.stderr.on("data", (err) => {
// Handle error...
});
bat.on("exit", (code) => {
// Handle exit
});
推荐阅读
- spring-integration - 如果我不想使用 dsl 编写在 jms 和 spring 集成通道之间建立连接的代码,它是怎么做的
- javascript - 在不更改某些特定项目的顺序的情况下对数组进行排序
- sql - 如何根据Oracle中另一列的内容删除列中的部分字符串
- c# - 文本块不显示
- bash - 将用户定义的列表与 bash 中的另一个列表进行比较
- amazon-web-services - API Gateway 抛出一般 SSLEngine 问题
- php - 从外部 API 在 WooCommerce 中发布和更新 JSON 数据
- xcode - IPA 尺寸太大
- java - 为什么我的代码中不需要 System.exit(0)?
- json - 如何处理以 json 格式返回的数组?