Ganymed SSH-2 for Java系列9之scpPut
2014-04-18 16:04
477 查看
Ganymed SSH-2 for Java系列9之scpPut
[java]
view plaincopy
/**
*
* Put local file to remote machine.
*
* @param host
*
* @param username
*
* @param password
*
* @param localFile
*
* @param remoteDir
*
* @throws IOException
*/
public static void scpPut(String host, String username, String password,
String localFile, String remoteDir, String permissions_code, int port)
throws IOException {
if (logger.isInfoEnabled()) {
logger.info("scp [" + localFile + "] to " + host + remoteDir);
}
Connection conn = null;
try {
conn = getOpenedConnection(host, username, password, port);
SCPClient client = new SCPClient(conn);
client.put(localFile, remoteDir, permissions_code);
} finally {
if (null != conn) {
conn.close();
}
}
}
各个参数说明:
String host 服务器ip
String username 用户名
String password, 密码
String localFile,本地文件
String remoteDir, 远程目录
String permissions_code,权限码
int port ssh端口
示例:
[java]
view plaincopy
String remoteDir = "/usr/local";
String localFile ="src/test.log";
try {
CommandRunner.scpPut("172.16.18.141", "root",
"123456", localFile, remoteDir,"0060", 22);
} catch (IOException e) {
e.printStackTrace();
}
说明:
这个操作是将本地的test.log上传到远程目录:usr local目录下面,如果重复上传同一个文件,会覆盖掉上一个文件,
如果第一次赋予的 权限码是0060 ,对同一个文件上传,第二次赋予的权限码是0600,那么其权限不会被改变,
但是文件会被第二次上传的文件覆盖掉。
[java]
view plaincopy
/**
*
* Put local file to remote machine.
*
* @param host
*
* @param username
*
* @param password
*
* @param localFile
*
* @param remoteDir
*
* @throws IOException
*/
public static void scpPut(String host, String username, String password,
String localFile, String remoteDir, String permissions_code, int port)
throws IOException {
if (logger.isInfoEnabled()) {
logger.info("scp [" + localFile + "] to " + host + remoteDir);
}
Connection conn = null;
try {
conn = getOpenedConnection(host, username, password, port);
SCPClient client = new SCPClient(conn);
client.put(localFile, remoteDir, permissions_code);
} finally {
if (null != conn) {
conn.close();
}
}
}
各个参数说明:
String host 服务器ip
String username 用户名
String password, 密码
String localFile,本地文件
String remoteDir, 远程目录
String permissions_code,权限码
int port ssh端口
示例:
[java]
view plaincopy
String remoteDir = "/usr/local";
String localFile ="src/test.log";
try {
CommandRunner.scpPut("172.16.18.141", "root",
"123456", localFile, remoteDir,"0060", 22);
} catch (IOException e) {
e.printStackTrace();
}
说明:
这个操作是将本地的test.log上传到远程目录:usr local目录下面,如果重复上传同一个文件,会覆盖掉上一个文件,
如果第一次赋予的 权限码是0060 ,对同一个文件上传,第二次赋予的权限码是0600,那么其权限不会被改变,
但是文件会被第二次上传的文件覆盖掉。
相关文章推荐
- Ganymed SSH-2 for Java系列9之scpPut
- Ganymed SSH-2 for Java系列10之scpGet
- Ganymed SSH-2 for Java系列11之SCPClient
- Ganymed SSH-2 for Java系列10之scpGet
- Ganymed SSH-2 for Java系列11之SCPClient
- Ganymed SSH-2 for Java系列4之删除远程服务器上的文件
- Ganymed SSH-2 for Java系列1之 ganymed-ssh2介绍
- Ganymed SSH-2 for Java系列5之删除远程服务器上的目录
- Ganymed SSH-2 for Java系列7之删除远程服务器上的非空目录(运用执行shell脚本的方式)
- Ganymed SSH-2 for Java系列1之 ganymed-ssh2介绍
- Ganymed SSH-2 for Java系列6之删除远程服务器上的非空目录
- Ganymed SSH-2 for Java系列1之 ganymed-ssh2介绍
- Ganymed SSH-2 for Java系列2之连接远程服务器
- Ganymed SSH-2 for Java系列5之删除远程服务器上的目录(补充说明)
- Ganymed SSH-2 for Java系列7之删除远程服务器上的非空目录(运用执行shell脚本的方式)
- Ganymed SSH-2 for Java系列7之删除远程服务器上的非空目录(方法说明)
- Ganymed SSH-2 for Java系列6之删除远程服务器上的非空目录
- Ganymed SSH-2 for Java系列3之执行远程shell 命令
- Ganymed SSH-2 for Java系列8之SFTPv3Client说明
- Ganymed SSH-2 for Java系列3之执行远程shell 命令