Java SCP copy local file to remote implementation
最近做的项目中,有一个小需求,需要通过SCP把本地文件copy到远程服务器。查了好多资料,最终解决方案简单快速,分享一下。
在这里,需要用到4个jar包,分别是ant-jsch.jar,ant-launcher.jar,ant.jar,jsch-0.1.52.jar。
前三个jar包,可以去http://ant.apache.org/bindownload.cgi下载最新的apache ant zip archive, 目前最新版本是apache-ant-1.9.7-bin.zip。解压之后,在lib文件夹下可以找到上述三个jar包。
jsch-0.1.52.jar可通过https://sourceforge.net/projects/jsch/下载。
把这几个jar包引入到项目中后,就可以用org.apache.tools.ant.taskdefs.optional.ssh.Scp来进行文件的网络传输了,代码如下:
Scp scp = new Scp();
int portSSH = 22;
String srvrSSH = "bjcore-geda06.int.thomsonreuters.com";
String userSSH = "oracle";
String pswdSSH = "oracle";
String localFile = "D:\\dx_test.html";
String remoteDir = "/home/oracle/"; scp.setPort( portSSH );
scp.setLocalFile( localFile );
scp.setTodir( userSSH + ":" + pswdSSH + "@" + srvrSSH + ":" + remoteDir );
scp.setProject( new Project() );
scp.setTrust( true );
scp.execute();
此外,还可以通过调用org.apache.tools.ant.taskdefs.optional.ssh.SSHExec来执行shell脚本。
如果想直接使用JSCH来完成上述操作,也可以参考org.apache.tools.ant.taskdefs.optional.ssh中的相应代码。
Java SCP copy local file to remote implementation的更多相关文章
- C# transfer local file to remote server based on File.Copy
using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; usin ...
- 【树莓派】-bash: /usr/local/java/jdk1.8.0_161/bin/java: cannot execute binary file: Exec format error
遇到这样的问题:-bash: /usr/local/java/jdk1.8.0_161/bin/java: cannot execute binary file: Exec format error ...
- 关于ADB push 出现failed to copy 'D:\file.xtxt' to '/system/temp/' : Read-only file system 的报错信息解决办法
首先使用USB连接电脑与小机,然后安装adb相应的驱动,这是第一步,也是必须要做的. 进入doc系统后,敲入adb shell 可以进入linux命令行状态,说明adb可以使用了. 回到标题,我们现 ...
- ORA-00245: control file backup failed; target is likely on a local file system (转载)
环境:DB VERSION: 11.2.0.4.0RAC 2 nodes 问题:邮件显示rman备份失败,查看rman备份日志 Starting Control File and SPFILE Aut ...
- Error copying image in the datastore: Not allowed to copy image file
opennebula error copying image in the datastore not allowed to copy image file Error copying image i ...
- vscode local attach 和 remote debug
VSCode是MS推出的一款免费的开源并跨平台的轻量级代码编辑器,内置Git和Debug等常用功能,强大的插件扩展功能以及简单的配置几乎可以打造成任意编程语言的IDE.本文简单聊一下其本地attach ...
- Java I/O学习——File
File我们出看可能会根据字面意思理解为文件,其实它既代表文件又代表目录. 这里有一个例子可以列出指定目录下的所有文件或目录, 以及我们可以过滤得到我们想要的文件 import java.io.Fil ...
- Java编程思想:File类getCanonicalFile()方法,listFile()方法
import java.io.IOException; import java.util.*; import java.util.regex.Pattern; import java.io.File; ...
- Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques
Web Application Penetration Testing Local File Inclusion (LFI) Testing Techniques Jan 04, 2017, Vers ...
随机推荐
- js 表单验证
不错的JS验证~~~~~~~~~~~~~~~~~~~~~~~~~ 用途:校验ip地址的格式 输入:strIP:ip地址 返回:如果通过验证返回true,否则返回false: */ function i ...
- MySQL使用技巧收集,持续更新中......
1.查询时按某一内容为中文的字段,以拼音字母排序: SELECT * FROM game ORDER BY CONVERT(name USING GBK);
- 初始通过 FastClick.notNeeded 方法判断是否需要做后续相关处理
其实前面几篇文章大家都遇到一些错误,很多时候呢,我并没有直接回复解决方案,不是LZ不想告诉大家,如果不想那就不写这个了,估计博客园啊CSDN啊那么多写博客的,很少有人把现用框架分享出来,既然分享就毫不 ...
- spring+mybatis+springmvc的配置
1.web.xml的配置 <?xml version="1.0" encoding="UTF-8"?><web-app version=&qu ...
- Get Script Path in Shell
#!/usr/bin/bashdir_old=$(pwd)absolute_script_path=$(cd $(dirname $0) && pwd)relative_script_ ...
- 利用yii2 gridview实现批量删除案例[转]
今天仍然继续探讨GridView的问题,昨天有个小伙伴留言说你用gridview给我去掉表头的链接?我想啊想,这用gridview确实不容易实现,至少我没想出来,会的下方可留言.但是呢,这根gridv ...
- Centos安装桌面环境(一个命令搞定)
# yum groupinstall "X Window System" "GNOME Desktop Environment"
- 面试复习(C++)之直接插入排序
#include <iostream> using namespace std; void Insertsort(int *a,int len) { ;j<len;j++) { in ...
- 初始化git远程仓库步骤
Git global setup git config --global user.name "bingo" git config --global user.email &quo ...
- christian louboutin ballerinas outlet
www.heelschuhe.de, Wie auch immer, Schneiden auf den Punkt; David und Connie in Vancouver: Wir hoffe ...