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 | 未知,等解, 有知道的朋友请留言详细描述一下, thks. |
| -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
Linux 和Windows之间命令行实现目录或文件互传的更多相关文章
- windows下命令行切换目录
1.切换目录 C:\Users\MACHENIKE> cd H:/www C:\Users\MACHENIKE>H: H:\www> 2.查看目录文件 H:\www>dir
- Windows 命令行切换目录
Windows 命令行切换目录 特别注意:切换到其它盘符不需要 cd 命令 1. 切换到 C 盘根目录 打开终端 cmd 后,输入cd C:\(一定要加上后面的反斜扛) 2.切换到 C 盘子目录 打开 ...
- 虚拟机中实现Linux与Windows之间的文件传输
虚拟机中实现Linux与Windows之间的文件传输 标签: linux 2016年06月28日 11:17:37 2092人阅读 评论(0) 收藏 举报 分类: linux(2) 一.配置环 ...
- 实现的是Linux和Windows之间的一种共享--samba
samba 基本配置及自定义控制 https://www.cnblogs.com/l-hh/p/9473937.html Samba简介: Samba实现的是Linux和Windows之间的一种共享, ...
- 虚拟机centOs Linux与Windows之间的文件传输
一.配置环境 虚拟机Linux:Fedora 9 文件传输工具:SSHSecureShellClient-3.2.9 二.实现步骤 1. 在Windows中安装文件传输工具SSHSecureShell ...
- Linux和windows之间通过scp复制文件
Windows是不支持ssh协议的 需要安装WinSSHD 安装以及设置过程如下: BvSshServer(原名winsshd)官方下载页在这里:https://www.bitvise.com/dow ...
- linux与linux,linux与windows之间用SSH传输文件
linux与linux,linux与windows之间用SSH传输文件linux与linux之间传送文件:scp file username@hostIP:文件地址 例: scp abc.txt ...
- 利用securecrt在linux与windows之间传输文件
SecureCRT这款SSH客户端软件同时具备了终端仿真器和文件传输功能.比ftp命令方便多了,而且服务器不用再开FTP服务了.rz,sz是便是Linux/Unix同Windows进行ZModem文件 ...
- Linux命令行批量替换多文件中的字符串【转】
Linux命令行批量替换多文件中的字符串[转自百度文库] 一种是Mahuinan法,一种是Sumly法,一种是30T法分别如下: 一.Mahuinan法: 用sed命令可以批量替换多个文件中的字符串. ...
随机推荐
- Bayan 2015 Contest Warm Up D题(GCD)
D. CGCDSSQ time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...
- IIS 服务或万维网公布服务,或者依赖这 服务可能在启动期间错误发生或者已禁用
作者:jiankunking 出处:http://blog.csdn.net/jiankunking 详细错误信息例如以下: 解决方式: 在服务中禁用下面3个服务自己主动启动: Net.Msmq Li ...
- Linux CentOS完全卸载PHP
很无语,CentOS居然php版本才5.1.6,很多开源的CMS无法安装. 查看php版本命令: #php -v 下面的命令是删除不干净的 #yum remove php 因为使用这个命令以后再用 # ...
- SQL Server 全文索引的管理
全文索引不同于常见的聚集索引或非聚集索引,这些索引的内部实现是平衡树(B-Tree)结构,而全文索引在物理上是由一系列的内部表(Internal tables)构成的,这些内部表称作全文索引片段(Fr ...
- 将IDEA maven项目中src源代码下的xml等资源文件编译进classes文件夹
如果使用的是Eclipse,Eclipse的src目录下的xml等资源文件在编译的时候会自动打包进输出到classes文件夹.Hibernate和Spring有时会将配置文件放置在src目录下,编译后 ...
- myeclipse无法导入项目
MyEclipse无法导入Java项目时常遇到的两种情况: 1.Some projects cannot be imported because they already exist in the w ...
- IEEE1588协议简介
IEEE1588协议,又称PTP(precise time protocol,精确时间协议),可以达到亚微秒级别时间同步精度,于2002年发布version1,2008年发布version2. IEE ...
- 【USACO】玉米实验(单调队列)
Description 约翰决定培育新的玉米品种以提高奶牛的产奶效率.约翰所有的土地被分成 N ×N 块,其中第 r行第 c 列的玉米质量为 Ar,c.他打算找一块质量比较均匀的土地开始自己的实验.经 ...
- js实现文字逐个出现动效
效果 首先看下效果,这是在h5页面中常见的一中文字展现方式,那么是怎么实现的呢?其实很简单 思路 用一个定时器将预制的文字通过.substring(0, i)方法不断的赋给要显示的区域,i在定时器里面 ...
- 公牛与状压dp
T1 疾病管理 裸得不能再裸的状压dp 不过数据范围骗人 考试时k==0的点没过 我也很无奈呀qwq #include<iostream> #include<cstdio> # ...