【问题标题】:How can I 'write' an environmental variable as input to a script?如何“编写”环境变量作为脚本的输入?
【发布时间】:2015-07-28 22:11:05
【问题描述】:

在 linux 命令行上使用交互式节点脚本时,如何将环境变量作为响应提供给它?

例如,我必须经常输入某个值作为对这些脚本部分的响应,因此我只需设置一个环境变量来包含它,即my_var = "really long string of names"

但是当脚本提示我时,无论我做什么,它都不会正确地插入变量。就好像我直接给了它my_var$(my_var)`$my_var`。它始终将其视为文字文本。

【问题讨论】:

  • 这完全取决于脚本如何读取和解释用户输入。
  • 哦...嗯...这是一个节点脚本,通常...
  • 那么为什么这个问题被标记为bashshell
  • 您可以使用expect 编写您发送给脚本的输入脚本:linux.die.net/man/1/expect
  • 如果进程期望来自标准输入设备的输入,环境变量不会产生任何影响。您唯一可以使用的是输入重定向。

标签: linux node.js shell command-line


【解决方案1】:

在节点脚本中使用 shell 变量的示例:

bash 外壳:

$ x=foobar
$ nodejs <<EOF
var myvar = '$x'
console.log(myvar)
EOF

结果:

foobar

【讨论】:

    猜你喜欢
    • 2012-09-03
    • 1970-01-01
    • 1970-01-01
    • 2021-01-23
    • 1970-01-01
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多