前不久,写了个很简单的exp登陆脚本。 今天想经过rz上传个文件,却怎么也传不上去。 并不报错,命令执行后除了文件未上传,其它与上传成功时同样。前端
作为一个前端开发,写段shell真是一步一个坑。shell
鼓捣良久后发现,原来是字符集问题。 用.sh
将.exp
包裹,并在.sh
文件中指定LC_CTYPE=en_US
解决。vim
#!/bin/sh
export LC_CTYPE=en_US
/Users/test/test.exp
复制代码
#!/usr/bin/expect -f
set ip *.*.*.*
set password **********
set timeout 10
spawn ssh root@$ip
expect {
"*yes/no" { send "yes "; exp_continue}
"*password:" { send "$password " }
}
expect "#*"
send "cd .. "
interact
复制代码
另: 经过该设置也解决了经过vim查看文件时的乱码问题。bash