Java Runtime.exec 调用linux SCP 命令Copy 远程机器上的目录失败

来源:互联网 发布:ubuntu怎么稳定翻墙 编辑:程序博客网 时间:2024/05/16 16:04

1.需求:  需要从 A 机拷贝 目录到 B 机,再从B机拷贝目录到 C机。

2.  实现: 在B机上运行一个java 程序,调用 linux 的 scp 命令来实现。

3. 问题:

               从A 机拷贝 目录到B机成功,但从B机拷贝目录到C 机失败,几乎是格式相同的命令,但把命令在linux 直接执行可以,用 Runetime.exec 调用则出错。

  如:

  //该命令能成功执行          

  runtime.exec("scp -r root@192.168.1.11:/ps_test/indexes/* /ps_temp/indexes/ "); 

  //该命令执行失败

  runtime.exec("scp -r  /ps_temp/indexes/*   root@192.168.1.13:/ps_test/indexes/ "); 

4. 解决方法: 

     //将第二条命令修改为:

       runtime.exec("scp -r  /ps_temp/indexes   root@192.168.1.13:/ps_test/indexes/ ");
  

    //即把 “/*” 去掉即可

0 0