我想使用 shell 脚本将 javascript 代码片段复制到 Nodejs REPL 中。例如
sum.sh
node // Here REPL open, I want copy below codes to this REPL and run
var num1 = 1
var num2 = 2
var sum = num1 + num2
sum
运行sum.sh后,期待结果
3
我们能有解决办法吗?
JavaScript 不在终端中运行。 要在 Node.js 文件中运行 JavaScript,您需要安装 Node.js,创建脚本,然后从终端运行它。
首先,创建 Node.js 文件,我们将其称为 sum.js:
let num1 = 1;
let num2 = 2;
let sum = num1 + num2;
console.log(sum);
要从终端运行此文件,我们需要输入
node sum.js
。
要从脚本运行此程序,只需创建一个具有可执行权限的脚本
sum.sh
即可具有以下权限:
node sum.js
这与从终端运行它是一样的,但现在它在脚本文件中。
您不能直接将粘贴命令复制到 NodeJS REPL 中。 我想你应该尝试一下这个。
运行命令
node
,然后在 REPL cli 上运行,如下 .load sum.sh
。
这将按预期逐行运行。
这是一个解决方案。
如果您希望某些 js 代码保留在
.sh
文件中并使用 node
执行它并获取结果,您可以尝试将脚本通过管道传输到 node
,就像在其他 REPL 环境(shell、python、ssh)中一样等)
所以你可以尝试:
node <<EOF
base = 2
power = 10
console.log(base**power)
EOF # stdout puts `1024`
此外,您还可以根据需要将输出通过管道传输到其他 CLI 程序。
附注不鼓励在 shellscript 中使用原始 JS 代码。请考虑将其拆分为单独的
.js
文件并使用 node
从 shell 脚本中调用它。