小编Mat*_*ron的帖子

无法使用数组作为环境变量

我不知道为什么我不能在脚本中使用 env 数组变量?
在我的~/.bashrc~/.profile

export HELLO="ee"
export HELLOO=(aaa bbbb ccc)
Run Code Online (Sandbox Code Playgroud)

在外壳中:

> echo $HELLO
ee
> echo $HELLOO
aaa
> echo ${HELLOO[@]}
aaa bbbb ccc
Run Code Online (Sandbox Code Playgroud)

在脚本中:

#!/usr/bin/env bash
echo $HELLO
echo $HELLOO
echo ${HELLOO[@]}
---
# Return 
ee
Run Code Online (Sandbox Code Playgroud)

为什么 ?

linux shell bash

10
推荐指数
1
解决办法
3万
查看次数

使用 EOF 发送变量并使用宿主变量

我想将变量从源发送到主机,然后执行主机脚本。这是我的代码:

var1=1
ssh -p 42 root@xxx /bin/bash << EOF
  var2=2
  echo $var1
  echo $var2
EOF
Run Code Online (Sandbox Code Playgroud)

返回 : 1

var1=1
ssh -p 42 root@xxx /bin/bash << \EOF
  var2=2
  echo $var1
  echo $var2
EOF
Run Code Online (Sandbox Code Playgroud)

返回 : 2

如何返回:

1
2
Run Code Online (Sandbox Code Playgroud)

?

shell ssh quoting here-document variable

2
推荐指数
1
解决办法
8154
查看次数

标签 统计

shell ×2

bash ×1

here-document ×1

linux ×1

quoting ×1

ssh ×1

variable ×1