java在远程linux服务器中切换目录和新建目录,把本地文件上传到新建的目录中
来源:互联网 发布:发货后淘宝店铺不存在 编辑:程序博客网 时间:2024/06/10 12:27
//java在远程linux服务器中切换目录和新建目录,把本地文件上传到刚才新建的目录中//ganymed-ssh2-build210.jar需要下载package com.company;import ch.ethz.ssh2.*;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;public class Main { //#开发环境 //#数据服务器的ip地址 private static String dataServerIp = "192.168.100.100"; // #数据服务器的用户名 private static String dataServerUsername = "root"; //#数据服务器的密码 private static String dataServerPassword = "abc"; //#数据服务器的目的文件夹 private static String dataServerDestDir = "/export/uploadDir/"; private static String localDir = "D:\\上传文件的临时目录\\"; public static void main(String[] args) { //文件scp到数据服务器 Connection conn = new Connection(dataServerIp); SFTPv3Client sftpClient = null; Session session = null; System.out.println("开始scp文件"); try { conn.connect(); boolean isAuthenticated = conn.authenticateWithPassword(dataServerUsername, dataServerPassword); if (isAuthenticated == false) throw new IOException("Authentication failed.文件scp到数据服务器时发生异常");// sftpClient = new SFTPv3Client(conn);// 在root的目录~下创建文件夹,无法切换目录// sftpClient.mkdir("10092", 0755); //成功,远程新建目录 ,第二个参数是创建的文件夹的读写权限,0755->即用户具有读/写/执行权限,组用户和其它用户具有读写权限;// sftpClient.mkdir("/10092/input",0755);//失败// sftpClient.mkdir(dataServerDestDir+"10092/input",0755);//失败// sftpClient.rmdir("oldRemoteDir"); //远程删除目录// sftpClient.rm("file");//远程删除文件 //执行远程命令,成功 session = conn.openSession(); session.execCommand("cd "+dataServerDestDir+" ; mkdir 10092 ; cd 10092 ; mkdir input ;mkdir output ");//分号隔开执行多条指令 //显示执行命令后的信息 InputStream stdout = new StreamGobbler(session.getStdout()); BufferedReader br = new BufferedReader(new InputStreamReader(stdout)); while (true) { String line = br.readLine(); if (line == null) { System.out.println("session,远程服务器返回信息:空"); break; } System.out.println("session,远程服务器返回信息:" + line); } //获得退出状态 System.out.println("session,ExitCode: " + session.getExitStatus());//返回0 表示命令执行成功;返回1 表示执行失败 session.close(); //远程文件复制到本地成功 SCPClient client = new SCPClient(conn); client.put(localDir+"10092.zip", dataServerDestDir+"10092/input");//成功,把本地的10092.zip上传到/10092/input/目录中// client.get(dataServerDestDir + "10092/input/10092.zip", localDir); //成功,远程scp到本地 } catch (IOException e) { e.printStackTrace(); System.out.println("文件scp到数据服务器时发生异常"); if (conn != null) { conn.close(); } if (sftpClient != null) { sftpClient.close(); } if (session != null) { session.close(); } } finally { if (conn != null) { conn.close(); } if (sftpClient != null) { sftpClient.close(); } if (session != null) { session.close(); } } System.out.println("scp文件结束"); }//main}
以上,亲测可用
参考: http://blog.sina.com.cn/s/blog_68fec59801015f5n.html
阅读全文
1 0
- java在远程linux服务器中切换目录和新建目录,把本地文件上传到新建的目录中
- java在远程linux服务器中切换目录和新建目录,把本地文件上传到新建的目录中
- java操作在linux服务器上的文件(新建目录,新建文件,添加文件内容......)
- 设置Samba服务器中新建文件/目录的权限
- 设置Samba服务器中新建文件/目录的权限
- 【NAS】Samba服务器中新建文件/目录的权限
- myeclipse中新建source folder目录和src目录
- Linux使用笔记: 设置Samba服务器中新建文件/目录的权限
- Linux使用笔记: 设置Samba服务器中新建文件/目录的权限
- 将本地文件上传到Linux目录下(上传到vm虚拟机中)
- Java新建多级目录
- 新建目录
- linux通过sshfs把远程主机的文件系统映射到本地的目录中(构建文件共享目录)
- 在linux下对目录新建和更改权限
- android 在SD卡中新建目录,存放文件
- ubuntu 新建用户到指定的目录
- 本地文件上传到指定目录
- 如何在后台把本地文件传到服务器的指定目录中
- LaTeX简单使用
- oracle11g 在备库创建对象
- Microsoft Visual Studio--- 未能加载文件 %CommonDir%\dte90a.olb。未能找到该文件,因此解决此问题的尝试,请重新安装此程序。
- structs2之Action与ActionContext
- ural 1026. Questions and Answers 查询
- java在远程linux服务器中切换目录和新建目录,把本地文件上传到新建的目录中
- 动态规划训练10 [Coloring Brackets CodeForces
- UnicodeEncodeError: 'ascii' codec can't encode characters in position 68-73:ordinal not in range(128
- HTML5 CSS3 经典案例:无插件拖拽上传图片 (支持预览与批量) (二)
- BZOJ 4720 [Noip2016]换教室 期望DP
- 关于使用PopupWindow的一些问题
- gradle-xxx.jar下载地址和gradle-xxx.zip下载地址
- Unity3d架构之-Unity MVC框架 StrangeIoC
- IndicatorViewPager (笔记)