好的,所以我很抱歉,如果这是一个不需要思考的问题,如果它是不清楚的,或者如果它是不可能的,但这里是我的代码,我试图得到/usr/bin/期望代码行继承/从主脚本获取变量。它不能工作,因为它是用不同的shell启动的(我认为),所以它没有加载变量。这是我的第一个帖子,所以如果我做错了什么,请纠正我;)
提前感谢,——一个 /
#!/bin/bash
red="x1b[0;31m"
nc="x1b[0m"
####### commented out till scipt is finished
# if [ $EUID -ne 0 ]; then
# echo -e "${red}[!]${nc} | script must be run as root"
# exit
# fi
read -p '[?] | ip address of device: ' ip
read -p '[?] | nickname to set for this config: ' name
read -p '[?] | username to generate keys for: ' usr
read -p '[?] | password for that user: ' pw
export $usr
export $pw
export $ip
export $name
/usr/bin/expect -c 'spawn ssh $usr@$ip; expect"(yes/no)? "; send "yesr"; expect "Password:"; send "$pw"; interact'
你必须1。正确导出它们;使用$env(foo)
来引用它们:
#!/bin/bash
var="World"
export var # No $
expect -c 'spawn echo Hello $env(var); interact'