ruby net ssh 应用中碰到一个奇怪问题

发现ruby ssh后, 欣喜了一阵子, 但是使用后发现一个问题, 就是有些命令执行的时候和手工执行的时候效果不一样。

简单的命令, 如pwd, ls -l是没有问题的, 能够正确得到结果。
但是如果是运行shell脚本, 或者 cd 命令,就会失败, 很奇怪吧, 不知道诸位是如何解决的?

puts Net::SSH::Version::CURRENT
ssh=Net::SSH.start(board["ip"], board["root_username"], :password => board["root_password"],:config => true,:port=> 22)
puts DateTime.now
result=ssh.exec! "export PATH=$PATH:/bin:/usr/bin:/usr/sbin:/sbin"
puts resul
puts "start to echo lib path"
result=ssh.exec! "echo $LD_LIBRARY_PATH"
puts result

#result=ssh.exec!("/usr/app/bin/apdiag")
result=ssh.exec("/usr/app/bin/apdiag")
puts result
result=ssh.exec! "pwd"
puts result


运行结果如下:

nil

start to echo lib path


#<Net::SSH::Connection::Channel:0x2926d6c>

/home/root

/usr/app/bin/apdiag: error while loading shared libraries: libmem.so: cannot open shared object file: No such file or directory

2009-06-05T14:24:34+08:00

total 336

drwxr-xr-x 6 7983 82 1024 Jun 4 08:33 build

-rw------- 1 root root 337920 Jun 4 08:29 build.tar

很奇怪啊
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值