读书人

shell脚本中的命令有关问题?代码补充

发布时间: 2012-12-15 15:16:03 作者: rapoo

shell脚本中的命令问题?代码补充中。求各位大侠帮助??
脚本:
auto_login_ssh () {
expect -c "set timeout -1;
spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3};
expect *assword:*;
send -- $1\r;
interact;";
}
auto_login_ssh 123456 root@192.168.56.1
连接成功了,我还想让它连接成功以后顺便直接启动192.168.56.1上的一个应用程序,比如打开一个txt文件就行,应该在哪里加什么代码啊?
找了一下午了,没找到好的方法,急求啊,谢谢各位高手了
[解决办法]
尝试下ssh 192.168.56.1 -c "cat abc.txt"

[解决办法]
spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3};

直接在这个分号后面加你要执行的动作
[解决办法]

引用:
spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3};

直接在这个分号后面加你要执行的动作

恩,谢谢,我去试试
[解决办法]
引用:
尝试下ssh 192.168.56.1 -c "cat abc.txt"

恩谢谢,去试试

[解决办法]
如: 不要分号
expect -c "
spawn ssh 10.10.10.10 "cp /a.txt b.txt \;mv b.txt bb.txt"
set timeout -1
expect {
\"*no)?\" {
send \"yes\r\"
exp_continue
}
\"*assword:*\" {
send \"$password\r\"
exp_continue
}
}
"
[解决办法]
引用:
引用:spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3};

直接在这个分号后面加你要执行的动作
恩,谢谢,我去试试

貌似不行啊,我加的动作是:dir命令,
报的错是:invalid command name "dir"
while executing
"dir"

[解决办法]
引用:
引用:引用:spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3};

直接在这个分号后面加你要执行的动作
恩,谢谢,我去试试
貌似不行啊,我加的动作是:dir命令,
报的错是:invalid command name "dir"
……

去掉分号试试
[解决办法]
引用:
引用:引用:引用:spawn -noecho ssh -o StrictHostKeyChecking=no $2 ${@:3};

直接在这个分号后面加你要执行的动作
恩,谢谢,我去试试


貌似不行啊,我加的动作是:dir命令,
报的错是:inva……


不行,报错:exec request failed on channel 0

[解决办法]
引用:
引用:尝试下ssh 192.168.56.1 -c "cat abc.txt"
恩谢谢,去试试

貌似不行啊
[解决办法]
谢谢大家了,我另外试出来了一种办法,谢谢大家出主意了,以后要常来这里啊,高手多啊

读书人网 >UNIXLINUX

热点推荐