精华内容
下载资源
问答
  • windows脚本自动归档、压缩文件,并通过sftp方式(公私钥身份验证)将文档上传至备份服务器(文档中包含详细步骤与脚本源码,本文档为原创文档)。
  • Windows平台下c++ 对ftp和sftp文件以及文件夹下载上传整体的工程源代码。 内涵文档,测试用例 经过单元测试,集成测试 可靠,本人也是经过半个月的开发和封装
  • 通过SFTPWindows系统传输文件

    千次阅读 2020-07-07 17:53:24
    使用SFTP服务向Windows系统传输文件,对于Windows系统中的文件传输 二、操作 使用SFTP服务(Linux下自带,个别Windows下需要安装) Windows下载FreeSSHd.exe 官网:http://www.freesshd.com/?ctt=download 下载到...

    一、目的

    使用SFTP服务向Windows系统传输文件,对于Windows系统中的文件传输

    二、操作

    使用SFTP服务(Linux下自带,个别Windows下需要安装)
    Windows下载FreeSSHd.exe

    下载到远程windows主机上正常安装即可
    在这里插入图片描述
    管理员用户启动 FreeSSHd,进行添加用户
    在这里插入图片描述
    配置SSH服务
    在这里插入图片描述
    修改SFTP Home接收文件的文件夹(不设置会报错)
    在这里插入图片描述
    启动服务器,应用确定保存
    在这里插入图片描述

    三、测试连接

    输入之前创建的SSH账户密码
    在这里插入图片描述

    Tips:如果报错怎么办?
    在这里插入图片描述
    解决方案:
    连接者主机中全局搜索如下文件:
    在这里插入图片描述
    编辑此文件添加允许Root账户登录一行代码
    在这里插入图片描述
    用管理员账户重启freeSSH软件即可

    四、传输文件

    本地文件传输到创建的SSH Home目录下
    在这里插入图片描述
    传输成功
    在这里插入图片描述

    展开全文
  • /** * SFTP channel对象,即ChannelSftp的实例对象, * 在应用程序中就可以使用该对象来调用SFTP的各种操作方法。 * @author Frank.dai * */ public class SFTPChannel { Session session = null; Channel channel ...

    package com.files.upload;

    import java.util.Map;

    import java.util.Properties;

    import java.util.logging.Logger;

    import com.jcraft.jsch.Channel;

    import com.jcraft.jsch.ChannelSftp;

    import com.jcraft.jsch.JSch;

    import com.jcraft.jsch.JSchException;

    import com.jcraft.jsch.Session;

    /**

    * SFTP channel对象,即ChannelSftp的实例对象,

    * 在应用程序中就可以使用该对象来调用SFTP的各种操作方法。

    * @author Frank.dai

    *

    */

    public class SFTPChannel {

    Session session = null;

    Channel channel = null;

    private static final Logger LOG = Logger.getLogger(SFTPChannel.class.getName());

    public ChannelSftp getChannel(Map sftpDetails, int timeout) throws JSchException {

    String ftpHost = sftpDetails.get(SFTPConstants.SFTP_REQ_HOST);

    String port = sftpDetails.get(SFTPConstants.SFTP_REQ_PORT);

    String ftpUserName = sftpDetails.get(SFTPConstants.SFTP_REQ_USERNAME);

    String ftpPassword = sftpDetails.get(SFTPConstants.SFTP_REQ_PASSWORD);

    int ftpPort = SFTPConstants.SFTP_DEFAULT_PORT;

    if (port != null && !port.equals("")) {

    ftpPort = Integer.valueOf(port);

    }

    JSch jsch = new JSch(); // 创建JSch对象

    session = jsch.getSession(ftpUserName, ftpHost, ftpPort); // 根据用户名,主机ip,端口获取一个Session对象

    //LOG.debug("Session created.");

    if (ftpPassword != null) {

    session.setPassword(ftpPassword); // 设置密码

    }

    Properties config = new Properties();

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

    session.setConfig(config); // 为Session对象设置properties

    session.setTimeout(timeout); // 设置timeout时间

    session.connect(); // 通过Session建立链接

    //  LOG.debug("Session connected.");

    //  LOG.debug("Opening Channel.");

    channel = session.openChannel("sftp"); // 打开SFTP通道

    channel.connect(); // 建立SFTP通道的连接

    //        LOG.debug("Connected successfully to ftpHost = " + ftpHost + ",as ftpUserName = " + ftpUserName

    //                + ", returning: " + channel);

    return (ChannelSftp) channel;

    }

    public void closeChannel() throws Exception {

    if (channel != null) {

    channel.disconnect();

    }

    if (session != null) {

    session.disconnect();

    }

    }

    }

    二:

    package com.files.upload;

    /**

    * 定义常量

    * @author Frank.dai

    *

    */

    public class SFTPConstants {

    public static final String SFTP_REQ_HOST = "host";

    public static final String SFTP_REQ_PORT = "port";

    public static final String SFTP_REQ_USERNAME = "username";

    public static final String SFTP_REQ_PASSWORD = "password";

    public static final int SFTP_DEFAULT_PORT = 22;

    public static final String SFTP_REQ_LOC = "location";

    }

    三:

    package com.files.upload; import java.io.File; import java.io.InputStream; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.HashMap; import java.util.Map; import java.util.Properties; import com.jcraft.jsch.ChannelSftp; public class SFTPTest { public SFTPChannel getSFTPChannel() {         return new SFTPChannel();     }     /**      * @param args      * @throws Exception      */     public static void main(String[] args) throws Exception {         Properties properties = new Properties();     InputStream in = Thread.currentThread().getClass().getResourceAsStream("/database.properties");         properties.load(in);         Calendar calendar = Calendar.getInstance();     calendar.add(Calendar.DATE, Integer.valueOf(properties.getProperty("indexday")));     String yesteDay = new SimpleDateFormat("yyyyMMdd").format(calendar.getTime());         SFTPTest test = new SFTPTest();         Map sftpDetails = new HashMap();         // 设置主机ip,端口,用户名,密码         sftpDetails.put(SFTPConstants.SFTP_REQ_HOST, "10.1.234.23");         sftpDetails.put(SFTPConstants.SFTP_REQ_USERNAME, "dwaml");         sftpDetails.put(SFTPConstants.SFTP_REQ_PASSWORD, "1234qwer");         sftpDetails.put(SFTPConstants.SFTP_REQ_PORT, "22");                          SFTPChannel channel = test.getSFTPChannel();         ChannelSftp chSftp = channel.getChannel(sftpDetails, 60000);                 String  pathINV = properties.getProperty("pathINV");         String filePath = pathINV + yesteDay;                  String a = "/home/adb/JKLIFE/INVEST/";         String dst = a+yesteDay; // 目标文件名         int countDirectory = 0;//文件个数         File folder = new File(filePath); // 自定义文件路径         if(folder.exists() && folder.isDirectory()){         File files[] = folder.listFiles();         for(File fileIndex : files){         countDirectory++;         String src = fileIndex.toString();        chSftp.put(src, dst, ChannelSftp.OVERWRITE); // 代码段2        System.out.println(countDirectory);        System.out.println("上传成功");         }         }else{         System.out.println("文件不存在");         }         chSftp.quit();         channel.closeChannel();                  /**          * 代码段1         OutputStream out = chSftp.put(dst, ChannelSftp.OVERWRITE); // 使用OVERWRITE模式         byte[] buff = new byte[1024 * 256]; // 设定每次传输的数据块大小为256KB         int read;         if (out != null) {             System.out.println("Start to read input stream");             InputStream is = new FileInputStream(src);             do {                 read = is.read(buff, 0, buff.length);                 if (read > 0) {                     out.write(buff, 0, read);                 }                 out.flush();             } while (read >= 0);             System.out.println("input stream read done.");         }         **/              /*    chSftp.put(src, dst, ChannelSftp.OVERWRITE); // 代码段2             //     chSftp.put(new FileInputStream(src), dst, ChannelSftp.OVERWRITE); // 代码段3        // chSftp.put(new FileInputStream(src), dst, new FileProgressMonitor(fileSize), ChannelSftp.OVERWRITE); // 代码段3         System.out.println("上传成功");         chSftp.quit();         channel.closeChannel();*/     } }

    展开全文
  • 下边就简单介绍一下如何远程连接主机,进行文件上传和下载,以及一些相关操作。二问:如何使用?举例,如远程主机的 IP 是 192.168.14.128或者是域名www.afeige.cn,用户名是 yangyufei,在命令行模式下:sftp ...

    一问:sftp是什么?

    sftp 是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性。下边就简单介绍一下如何远程连接主机,进行文件的上传和下载,以及一些相关操作。

    二问:如何使用?

    举例,如远程主机的 IP 是 192.168.14.128或者是域名www.afeige.cn,用户名是  yangyufei,在命令行模式下:sftp yangyufei@192.168.14.128或者  yangyufei@www.afeige.cn。回车提示输入密码。进入

    bb4f509699b6e1d4f0d22e5fe965b188.png

    如果登陆远程机器不是为了上传下载文件,而是要修改远程主机上的某些文件。可以

    ssh  yangyufei@192.168.14.128(其实sftp就是ssh 的一个程式。)

    ca98a6ce72f7719980e9981a7ac19928.png

    三问:想干什么?

    d7b28268e4bd6afb8fa6efccc3356385.png

    将远程主机/home/www目录下的文件:download.txt ,下载到windows本地E盘下的test文件夹中

    sftp> get /home/www/download.txt E:/test/

    这条语句将从远程主机的 /home/www/ 目录下将 test.text 下载到本地  E:/test/目录下。

    1027879a215912f95b5334f73ae91b5d.png

    --------------------------------------------------------------------------------------------------------------------------------------------------------

    将windows本地E盘test文件夹下的upload.txt文件上传至远程主机/home/www目录下的文件下 (若上传文件夹 添加参数 -r )

    #上传单个文件

    sftp> put E:/test/upload.txt /home/www/

    #上传整个文件夹

    sftp> put -r E:/test /home/www/

    第一条语句将把本地E盘test文件夹目录下的 upload.txt文件上传至远程主机/home/www目录下。

    第二条语句将把本地E盘test文件夹目录件上传至远程主机/home/www目录下。

    你如果不知道远程主机的目录是什么样, pwd命令可以帮您查询远程主机的当前路径。

    2ed9f5e93dcc5fc053b470fc719a33e4.png

    查询本机当前工作目录 lpwd.

    c6c58feb3da2a4a82c43e952806ff8dd.png

    改变路径可以用cd ,

    e40fb31360853daa463d4ecb24916411.png

    改变本机路径可以用 lcd;

    d397682c3e20f83a34ee1e897ab1a022.png

    ls rm rmdir mkdir 这些命令都可以使用。同理调用本机都是加 l , 即 lls lrm.

    要离开sftp,用exit 或quit、 bye 均可。

    详细情况可以查阅 man  sftp.

    如果觉得在命令行模式下不太方便,可以 sudo apt-get install gftp。在图形界面下操作就简便多了。

    SFTP命令汇总

    cd 路径                        更改到远程目录的路径

    lcd 路径                       更改到本地目录的路径

    chgrp group path               将文件path的组更改为group

    chmod mode path                将文件path的权限更改为mode

    chown owner path               将文件path的属主更改为owner

    exit                           退出 sftp

    help                           显示这个帮助文本

    get 远程路径                   下载文件

    ln existingpath linkpath       符号链接远程文件

    ls [选项] [路径]               显示远程目录列表

    lls [选项] [路径]              显示本地目录列表

    mkdir 路径                     创建远程目录

    lmkdir 路径                    创建本地目录

    mv oldpath newpath             移动远程文件

    open [用户@]主机[:端口]        连接到远程主机

    put 本地路径                   上传文件

    pwd                            显示远程工作目录

    lpwd                           打印本地工作目录

    quit                           退出 sftp

    rmdir 路径                     移除远程目录

    lrmdir 路径                    移除本地目录

    rm 路径                        删除远程文件

    lrm 路径                       删除本地文件

    symlink existingpath linkpath  符号链接远程文件

    version                        显示协议版本

    人生犹如负重致远,不可急于求成。 自律使人自由!

    展开全文
  • 本篇文章主要介绍了java实现sftp客户端上传文件以及文件夹的功能代码,具有一定的参考价值,有兴趣的可以了解一下。
  • 一、文件上传说明1:所谓上传window上的文件上传到linux上说明2:上传文件会自动放到当前的用户的家目录1:打开SFTP的窗口Alt+p输入上传命令:语法:put path/filename.txtPut -r path/文件夹或者put “path/...

    一、文件上传

    说明1:所谓上传window上的文件上传到linux上

    说明2:上传的文件会自动放到当前的用户的家目录

    1:打开SFTP的窗口

    Alt+p

    ff5055aace41e106941c444db2349dc8.png

    输入上传命令:

    语法:

    put  path/filename.txt

    Put  -r  path/文件夹

    或者

    put  “path/filename.txt”

    Put  -r  “path/文件夹”

    再或者

    直接拖拽(有的不好使)

    二、文件下载

    在SFTP窗口里面

    1:设置你要下载目标路径

    备注一下 如果不设置下载的目标路径默认路径是window的家

    语法结构:

    lcd  要下载的目标路径

    get  “要下载的文件”

    52d622e8f16d2170a1d5f390434dc860.png

    下载文件夹:

    切换到下载目录

    get  –r  “要下载的文件夹” (绝对路径)

    [转载]ASP.NET Core文件上传与下载(多种上传方式)

    ASP.NET Core文件上传与下载(多种上传方式)   前言 前段时间项目上线,实在太忙,最近终于开始可以研究研究ASP.NET Core了. 打算写个系列,但是还没想好目录,今天先来一篇,后面在 ...

    ASP.NET Core文件上传与下载(多种上传方式)

    前言 前段时间项目上线,实在太忙,最近终于开始可以研究研究ASP.NET Core了. 打算写个系列,但是还没想好目录,今天先来一篇,后面在整理吧. ASP.NET Core 2.0 发展到现在,已经 ...

    php实现文件上传与下载(上)

    php实现文件的上传与下载是一个挺基本的功能,一般网站多多少少都会有这样的需求在内,当然不是说所有的文件都可以被上传,那这网络就太没有安全性可言了.因为接触php时间不长,今天写练练手,随笔也就是公开 ...

    Asp.Net MVC 文件管理Demo(文件展示,上传,下载,压缩,文件重命名等)

    之前 ,有想做一个文件管理页面. 参考了 许多资料,终于完成了一个基于Asp.net MVC 的文件管理Demo.界面如下.   一,实现功能及相关技术 文件管理Demo基于Asp.NET MVC , ...

    java上传、下载、删除ftp文件

    一共三个类,一个工具类Ftputil.,一个实体类Kmconfig.一个测试类Test 下载地址:http://download.csdn.net/detail/myfmyfmyfmyf/669710 ...

    Java 实现文件上传、下载、打包、文件copy、文件夹copy。

    文件and文件夹copy package org.test; import java.io.*; public class FileCopy { /** * 复制单个文件 * * @param old ...

    解惑:如何使用SecureCRT上传和下载文件、SecureFX乱码问题

    解惑:如何使用SecureCRT上传和下载文件.SecureFX乱码问题 一.前言 很多时候在windows平台上访问Linux系统的比较好用的工具之一就是SecureCRT了,下面介绍一下这个软件的 ...

    Java实现FTP文件与文件夹的上传和下载

    Java实现FTP文件与文件夹的上传和下载 FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为"文传协议".用于Internet上的控制 ...

    Struts2入门(七)——Struts2的文件上传和下载

    一.前言 在之前的随笔之中,我们已经了解Java通过上传组件来实现上传和下载,这次我们来了解Struts2的上传和下载. 注意:文件上传时,我们需要将表单提交方式设置为"POST" ...

    随机推荐

    [PostgreSQL] 图解安装 PostgreSQL

    展开全文
  • 最近用到SFTP上传文件查找了一些资料后自己做了一点总结,方便以后的查询/*** 将文件上传到服务器** @param filePath* 文件路径* @param channelSftp* channelSftp对象* @return*/public static boolean uploadFile...
  • linux系统通过lftp结合sftpwindows系统发送文件
  • java通过sftp上传文件

    千次阅读 2019-01-07 17:20:29
    Linux操作系统我们经常使用ssh中的ftp,sftp连接服务器,做相应操作。 如何通过java代码的形式采用sftp...-- sftp上传依赖包 --> <dependency>  <groupId>com.jcraft</...
  • java使用SFTP上传文件到资源服务器本文实例为大家分享了java实现SFTP上传文件到资源服务器工具类,供大家参考,具体内容如下首先得创建连接sftp服务器的公共类MySftp.java:package cn.test.util;import java.io....
  • windows下C语言实现的通过ssh2连接设备sftp文件并执行 1.所有设备的IP地址保存在本地文件TXT中 2.取IP做成一个链表 3。取结点 4.创建容量为100的线程池,ssh2连接设备,sftp传输文件并执行 5.返回结果写入本地文件...
  • 根据输入参数判断是文件还是目录,进行上传和下载 本地参数local需要与远程参数remote类型一致,文件以文件名结尾,目录以\结尾 上传和下载的本地和远程目录需要存在 异常捕获 2.代码实现 #!/usr/bin/python # ...
  • 今天我一直用scp想实现从windows上传文件到Linux服务器,但是鼓捣了半天也没有实现。后来查资料才发现,scp实现文件上传和下载貌似只能在Linux和Linux之间实现。(欢迎指正不对的地方) 后来开始转用sftp来解决...
  • java编码,通过ftp和sftp连接linux服务器上次和下载文件
  • 环境描述:cognos cube在...1、Windows上传文件到linux,有ftp和sftp方式,本次采用sftp方式:  下载putty中psftp.exe程序  新建upload.txt文件,代码如下: open 192.168.6.65 cd /home/cognos/cube/tes...
  • 我目前正在进行一个服务器客户端设置,其中我有两个独立的服务器脚本。...在我的客户端代码在Windows10系统上运行。这两个服务器都运行在unix环境中(分别是macOS和ubuntu16.04)。在我正在运行的SFTP服务器的...
  • 在讲paramiko模块的sftp方法之前,先介绍一个自带系统模块os中的listdir方法。 import os #引入os模块 path='e:/soft' #将要检索的路径赋值给path变量 mylist=os.listdir(path) #调用os.listdir方法 参数为path 并将...
  • php通过sftp上传文件

    千次阅读 2019-06-03 17:07:12
    sftp类 class Sftp { // 初始配置为NULL private $config = NULL; // 连接为NULL private $conn = NULL; //sftp resource private $ressftp = NULL; // 初始化 public function __construct($co...
  • 在使用Windows操作系统远程访问Linux服务器的时候,要实现文件之间的交互,可以使用sftp命令,我一般使用的工具是CRT和xshell,这里用CRT举个例子: 使用xshell其实也一样,只是打开方式不一样,xshell在...
  • 比如我在D:目录下有一个文件 wechat_config.rar 我需要上传到 odoo-dev/odoo14/odoo 链接服务器,选择SFTP,链接...put好像不能直接上传文件夹,所以我打包成rar文件 然后去服务器看,既可有了此文件。 perfect ...
  • 我正在尝试使用SFTP将excel文件从本地Windows PC上传到linux计算机。这是我的代码:private void uploadToSftp() {try{ChannelSftp sftpClient = null;Channel channel = null;JSch jsch = new JSch();Session ...
  • 在使用Windows通过CRT远程访问Linux服务器的时候,要实现文件的交互,可以使用sftp命令。 一、命令说明: pwd:用来查看远程Linux服务器当前路径。 ls:显示当前linux服务器目录文件。 如果想要操作本地windows目录...
  • sftp上传文件

    2021-04-29 19:47:17
    文件完整路径=basePath+directory @param basePath 服务器的基础路径 @param directory 上传到该目录 @param sftpFileName sftp端文件名 @param in 输入流 */ public void upload(String basePath,String directory,...
  • sftp上传本地文件

    2021-06-08 16:23:33
    如何用sftp上传文件到linux服务器上服务器上安装vsftpd就是ftp服务,并开启允许root账户 本地使用FlashFXP这样的客户端上传; 服务器上安装vsftpd并开启root账户允许 (非必要不建议开启root账户) yum -y install ...
  • .bat文件 CD /d C:\Program Files (x86)\WinSCP winscp /script=upload.txt...open sftp://user@ip:port/ -privatekey=id_rsa.ppk cd up/test rm * lcd D:\test put D:\test exit 密钥 id_rsa 转 id_rsa.ppk请自行.
  • 是一个基于 MS windows 平台的功能强大的SFTP、FTP 文件传输软件。使用了 Xftp 以后,MS windows 用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。Xftp 能同时适应初级用户和高级用户的需要。它采用了标准的...
  • curl开发包 实现 1.sftp上传 2.url post 消息和get消息

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 10,803
精华内容 4,321
关键字:

sftp上传文件windows