当前位置: 首页 > 知识库问答 >
问题:

如何调用Shell脚本或Python脚本从原子电子应用程序

柯耀
2023-03-14

我试图使用原子电子为Mac和Windows编写桌面应用程序

我需要的是:

一个按钮。

当用户单击按钮时,它将运行以下shell(或python脚本):

ping x.x.x.x

结果将显示在文本区域中。

我试着使用[shelljs]和[yargs],但它似乎不适用于原子电子。

所有我想要的是使用JAVASCRIPT编写桌面应用程序(当然是GUI),调用一些脚本(shell

如有任何建议,将不胜感激,谢谢:)

共有3个答案

韦阳辉
2023-03-14

您可以使用child_进程通过使用以下代码来归档您正在尝试执行的操作

var exec = require('child_process').exec
function Callback(err, stdout, stderr) {
    if (err) {
        console.log(`exec error: ${err}`);
        return;
    }else{
        console.log(`${stdout}`);
    }
}

res = exec('ping xxx.xxx.xxx', Callback);
吕宣
2023-03-14

请尝试节点powershell npm。您可以直接执行shell脚本命令并显示结果。

var shell = require('node-powershell')
var ps = new shell()
ps.addCommand('ping -c 4 0.0.0.0')
ps.invoke()
.then(function (output) {
    console.log(output)
})
.catch(function (err) {
    console.log(err)
    ps.dispose()
})

见:https://www.npmjs.com/package/node-powershell

壤驷瑾瑜
2023-03-14

它可以直接用Node完成,你可以使用child_process模块。请注意这是异步的。

const exec = require('child_process').exec;

function execute(command, callback) {
    exec(command, (error, stdout, stderr) => { 
        callback(stdout); 
    });
};

// call the function
execute('ping -c 4 0.0.0.0', (output) => {
    console.log(output);
});

我鼓励您也看看npm,有很多模块可以帮助您做您想做的事情,而无需调用python脚本。

 类似资料:
  • 问题内容: 如何从python代码调用Shell脚本? 问题答案: 该子模块将帮助你。 显而易见的例子: 其中是一个简单的shell脚本,它是此运行的返回值。

  • 问题内容: 我试图弄清楚如何从Shell脚本调用Python函数。 我有一个具有多个功能的Python文件,我需要在我的shell脚本中使用它们返回的值。有没有办法做到这一点。 我这样做是为了使用Python读取配置文件并在shell中获取值。还有其他更好的方法来实现这一目标。 包含: 我需要将Python函数返回的值存储在shell变量中。 问题答案: 您可以通过要求Python解释器打印结果来

  • 问题内容: 我尝试谷歌搜索答案,但没有运气。 我需要使用我的超级计算机服务器,但是要运行我的python脚本,必须通过shell脚本执行。 例如我要执行 如何做到这一点? 问题答案: 只需确保python可执行文件在PATH环境变量中,然后在脚本中添加 细节: 在文件job.sh中,放入 执行此命令以使脚本可运行: 运行 :

  • 我有一个简单的电子应用程序,我想在多个平台上运行。我从git挂钩启动应用程序。我有多个特定于平台的应用程序包发布到npm。windows路径运行良好。下面是我的windows commit msg钩子脚本(它运行我的electron apps.exe,效果很好): 我在mac上安装了这个git钩子脚本(它不起作用)。 当mac钩子运行时,它会出现以下错误: 看起来我可能试图在mac上错误地启动这个

  • 问题内容: 我在linux机器上,我监视进程使用情况。大多数时候,我将离开系统,并且可以在设备上访问Internet。因此,我计划编写一个shell脚本,该脚本可以向我发送该过程的输出。 可能吗? 如果是的话,如何制作一个shell脚本给我发邮件? 请提供摘要以开始使用。 问题答案: 是的,它可以正常工作,并且通常用于:

  • 问题内容: 我有一些用PHP编写的代码,但是我还开发了一个用Python编写的脚本。是否可以从PHP代码调用此Python脚本? 如果是,如何从PHP将参数传递给Python脚本? 我试图找到一个没有成功的答案。 有人可以给我一个提示吗? 问题答案: 您使用系统功能:http : //php.net/manual/en/function.system.php 像这样: