ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 数据迁移:SFTP(2)——Linux

数据迁移:SFTP(2)——Linux

原创 Linux操作系统 作者:crb1987 时间:2010-08-20 15:42:39 0 删除 编辑
由于客户的要求,之前在Windows下完成了数据迁移工作(包括之后的导入),必须转入到Linux下。由于导出导入核心都是PL/SQL完成的,所以关键问题在于SFTP上传了。
根据先前的经验,采用同样的方式对SFTP上传批处理进行改造,但发现,上传批处理使用到的脚本(上一篇日志的sftp.txt)有问题。文件中的密码不会自动赋给SFTP客户端,而是需要界面输入,输入后开始读脚本(上一篇日志的sftp.txt)中,用户信息的下一行。
经过一番折腾,最后找到了一种方法,虽然麻烦,但时间原因,就开始用上了。
方法就是使用”expect“
我的做法很绕,现实利用shell,生成一个脚本,并运行。生成的脚本如下:
#!/usr/bin/expect
set folder_name server_folder
spawn sftp -oPort=22 sftp_user_name@192.168.0.100
expect "*password*"
send "sftp_user_password\n"
expect "*sftp>*"
send "lcd /home/oracle/data/\n"
expect "*sftp>*"
send "mkdir $folder_name\n"
expect "*sftp>*"
send "cd $folder_name\n"
expect "*sftp>*"
send "put a.txt\n"
expect "*sftp>*"
send "exit\n"
expect eof
注意:系统中必须按装了”expect“包。安装它我也费了不上苦头

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/14683446/viewspace-671471/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2010-07-02

  • 博文量
    10
  • 访问量
    26563