zoukankan      html  css  js  c++  java
  • Linux 和Windows之间命令行实现目录或文件互传

    Linux 和Windows之间命令行实现目录或文件互传

    在linux中,我们常用scp命令传输文件:
    如以下实例,我们想把当前服务器文件abc.sql传输到192.168.1.1服务器上

    我们可以执行以下命令:

    scp /home/person/hww/abc.sql root@192.168.1.1:/home/person/hww 

    回车后输入192.168.1.1服务器密码就可以了。

    你也可以使用以下命令:

    pscp /home/person/hww/abc.sql root@192.168.1.1:/home/person/hww 

    同样回车后输入 192.168.1.1服务器密码就可以了。

    注:pscp是putty安装包所带的远程文件传输工具,使用和Linux下scp命令相似。

    下载地址:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

    pscp和scp功能相同,但pscp同时支持windows下使用,它有效解 决了windows系统向linux服务器传输文件,而且它只有一个文件,即pscp.exe,建议将该文件放到C:\WINDOWS\system32 下面,这样就可以在任何地方调用该文件命令,你也可以放在任意你指定文件夹下。

    pscp语法基本与scp相同,但也有一下几个注意点:

        -p 拷贝文件的时候保留源文件建立的时间。
        -q 执行文件拷贝时,不显示任何提示消息。
        -r 拷贝整个目录
        -v 拷贝文件时,显示提示信息。

        Usage:
      pscp [options] [user@]host:source target
      pscp [options] source [source...] [user@]host
      pscp [options] -ls user@host:filespec
      用法:
      pscp [选项] [用户名@]主机:源文件 目标文件
      pscp [选项] 源文件 [源文件……] [用户名@]主机
      pscp [选项] -ls 用户名@主机:文件空间?
      Options:
      选项:
      -p preserve file attributes 保护文件属性
      -q quiet, don't show statistics 安静,不显示统计
      -r copy directories recursively 复制子文件夹
      -V print version information and exit 显示信息
      -v show verbose messages
      -load sessname Load settings from saved session
      -load 加载,加载保存节的设定
      -P port connect to specified port
      -P 端口,连接到指定空间端口
      -l user connect with specified username
      -l 用户,用指定的用户连接空间
      -pw passw login with specified password
      -pw 密码,用指定的密码登录空间
      -1/-2 强迫 ssh 使用的版本
      -4 -6 force use of IPv4 or IPv6
      -C 打开压缩
      -i key 钥匙,证明用的钥匙文件
      -batch 关闭交互能力,也许
      -unsafe 不安全,允许伺服端取代字符 (危险的)

           pscp options(详细参数)

    参数 描述(英文) 描述(中文)
    -V print version information and exit 打印版本信息并退出
    -pgpfp print PGP key fingerprints and exit 打印PGP密钥指纹并退出。(至于PGP密匙是什么,这个楼主我也不太清楚,欢迎评论解答
    -p preserve file attributes 保留文件属性
    -q quiet, don't show statistics 悄悄地, 不显示统计数据

    -r copy directories recursively 递归拷贝目录
    -v show verbose message 显示冗余信息
    -load sessname Load settings from saved session 加载保存好的会话设置
    -P port connect to specified port 连接指定的端口(如果不用此选项,默认为22端口)
    -l user connect with specified usernam

    指定用户连接   

    -pw passw login with specified password

    显式的输入用户密码

    -1 -2 force use of particular SSH protocol version 强制使用指定SSH协议版本, 可以通过:cat /etc/ssh/ssh_config | grep Protocol 来查看, 也可以用pscp -v的形式先连接一下, 它会显示出所有冗余信息,其中会有这么一行Using SSH protocol version 2 具体试一下就知道了!
    -4 -6 force use of IPv4 or IPv6 强制使用IPv4或IPv6
    -C enable compression 使用压缩
    -i key private key file for authentication 认证所需要的私有密钥文件
    -noagent disable use of Pageant 不使用Pageant
    -agent enable use of Pageant 使用Pageant
    -batch disable all interactive prompts 禁用所有交互提示
    -unsafe allow server-side wildcards (DANGEROUS) 允许服务器段的通配符
    -sftp force use of SFTP protocol 强制使用SFTP协议
    -scp force use of SCP protocol 强制使用SCP协议

    简单说一下几个参数:

    -P 指定ssh的端口, 注意是大写的P

    pscp -P 2992 test.zip root@192.168.1.245:/root/ 

    -l user 的用户

    pscp -l root test.zip 192.168.1.245:/root/    其实就是把user提到了前面用-l来指定。

    -pw passw

    pscp -l root -pw 123456 test.zip 192.168.1.245:/root/    与-l一样。 可以直接指定密码,出于安全性考虑不见意这样使用。 

    下面举一实例方便大家理解:

    想把xp系统下fileUpload文件夹下的所有内容传输到192.168.1.1的linux服务器上"/home/data/file"文件夹下。我们可以做以下操作:

    1.我们把pscp.exe拷贝到fileUpload的同级目录,然后我们可以写一个简单bat脚本,完成以上操作

    2.脚本内容:

    @echo off  

    pscp.exe -l hww -pw "123" -r "fileUpload/"  root@192.168.1.1:/home/data/file  

    pause 

    把文件另存为以bat为后缀的文件,我把它定义为fileupload.bat

    注意:hww为linux设置的上传文件账户,123为hww登录linux密码。你也可以直接使用root帐号。但建议为了服务器安全,设置特别上传帐号。

     3.现在你只要把所要上传的文件放置到fileUpload目录下,然后双击fileupload.bat,你就可以见证奇迹的一刻了,windows控制台会显示上传内容,默默等待上传完成,会提示”按任意键退出“!

     OK,我们完成了windows系统对linux服务器文件的上传。

    参考:

      https://www.cnblogs.com/mingjian/p/4873199.html

      https://www.cnblogs.com/echo-something/archive/2012/09/20/pscp.html

    如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。
    如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。
    如果,您对我的博文感兴趣,可以关注我的后续博客,我是【AlbertRui】。

  • 相关阅读:
    个人管理:提高你的搜商
    敏捷个人:提供更多文档下载,并转载一篇敏捷个人读书笔记
    个人管理: 激励你的一句话
    敏捷个人 从Scrum实践来思考如何导入价值观
    信息系统开发平台OpenExpressApp 如何解决ComboBox.TextProperty绑定带来问题的来龙去脉
    敏捷个人 敏捷个人价值观,欢迎提出你的意见和你的价值观
    使用VS2010的CodedUI来做自己的自动化测试框架
    .Net4下的MEF(Managed Extensibility Framework) 架构简介
    IronRuby - 快速在半小时学习Ruby基础知识
    敏捷个人 项目网站文档页签增加blog链接
  • 原文地址:https://www.cnblogs.com/albertrui/p/8110126.html
Copyright © 2011-2022 走看看