背景:
访问远程服务器是通过跳板机的方式,每次登录都需要输一遍密码,很是繁琐。所以使用 expect 这个交互式脚本语言,来自动输入密码登录跳板机,再执行 ssh 命令登录远程服务器。但是这样带来了另一个问题,就是 szrz 命令不能使用了
具体现象:
在远程服务器执行 rz,可以跳出文件选择窗口,并上传文件,但是上传完成后,在当前目录下找不到文件
尝试解决:
经过搜索,有很多人都说通过使用 shell 脚本调用 expect 脚本并在 shell 脚本里指定`export LC_CTYPE=en_US`可以解决问题,但是我实测无效。现象和上面说的一样。
目前的替代方法:
使用 nc 的 socket 管道直接传输文件。但是这种方式稍微繁琐一些,需要客户端和服务器能直接通信,还要分别在客户端和服务端敲 nc 命令,不如 rz 来的方便
各位 v 友有使用 expect 的同时不让 szrz 失效的解决方案吗
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.