【问题标题】:Run any Linux terminal command from TypeScript?从 TypeScript 运行任何 Linux 终端命令?
【发布时间】:2018-04-06 21:02:35
【问题描述】:

有没有办法直接从 TypeScript 类中执行 Linux 终端命令?这个想法是做类似的事情:

let myTerminal = new LinuxTerminal();
let terminalResult = myTerminal.run("sudo apt-get update");

编辑

我通过 Node JS 和 Angular 运行它。

【问题讨论】:

  • 你是在 Node JS 环境中运行的吗?从浏览器不可能做到这一点。这与打字稿有什么关系?以前用纯 javascript 对你有用吗?
  • @OmriLuzon 是的,我通过 Node JS 和 Angular 运行它。我只是想弄清楚这是否可能。将此信息添加为 EDIT
  • 所以应该是从node.js运行任何Linux终端命令?
  • @Kristianmitk 这将解决问题。知道任何解决方案吗?
  • @Socrates 我的回答是否解决了您的问题?否则向我们提供更多信息

标签: linux bash typescript terminal


【解决方案1】:

node.js 中,您可以生成 child-process

const { exec } = require('child_process');

exec('sudo apt-get update', (err, stdout, stderr) => {
  // your callback
});

【讨论】:

  • 如果我通过 Electron 运行我的应用程序,它可以工作,但如果我通过 Chrome 之类的浏览器运行它,它会阻止 exec(...)。我认为这一定是由于 Chrome 内部的安全原因,对吧?
  • 是的,您在浏览器中运行的 javascript 代码无法与底层系统通信(这是一个合理的限制)。您将始终需要一个后端(服务器)作为中介
猜你喜欢
  • 2018-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多