java jcsh执行linux命令,jcsh中SFTP

com.jcraft

jsch

0.1.54

//利用ChannelSftp 类中的方法 可以实现SFTP操作

private static Logger log = Logger.getLogger(SFTPUtils.class);

private String host;//服务器连接ip

private String username;//用户名

private String password;//密码

private int port = 22;//端口号

private ChannelSftp sftp = null;

private Session sshSession = null;

public SFTPUtils(){}

public SFTPUtils(String host, int port, String username, String password)

{

this.host = host;

this.username = username;

this.password = password;

this.port = port;

}

public SFTPUtils(String host, String username, String password)

{

this.host = host;

this.username = username;

this.password = password;

}

/**

* 通过SFTP连接服务器

*/

public void connect()

{

try

{

JSch jsch = new JSch();

jsch.getSession(username, host, port);

sshSession = jsch.getSession(username, host, port);

if (log.isInfoEnabled())

{

log.info("Session created.");

}

sshSession.setPassword(password);

Properties sshConfig = new Properties();

sshConfig.put("StrictHostKeyChecking", "no");

sshSession.setConfig(sshConfig);

sshSession.connect();

if (log.isInfoEnabled())

{

log.info("Session connected.");

}

Channel channel = sshSession.openChannel("sftp");

channel.connect();

if (log.isInfoEnabled())

{

log.info("Opening Channel.");

}

sftp = (ChannelSftp) channel;

if (log.isInfoEnabled())

{

log.info("Connected to " + host + ".");

}

}

catch (Exception e)

{

e.printStackTrace();

}

}

/**

* 关闭连接

*/

public void disconnect()

{

if (this.sftp != null)

{

if (this.sftp.isConnected())

{

this.sftp.disconnect();

if (log.isInfoEnabled())

{

log.info("sftp is closed already");

}

}

}

if (this.sshSession != null)

{

if (this.sshSession.isConnected())

{

this.sshSession.disconnect();

if (log.isInfoEnabled())

{

log.info("sshSession is closed already");

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值