一文掌握 Windows 文件传输:5 种命令行工具的原理、参数与示例
在Windows系统之间传输文件可以使用多种命令行工具,以下是常用的方法及命令示例:
一、使用net use
+ copy
/xcopy
命令(适用于局域网共享)
1. 建立网络连接(访问远程共享文件夹)
net use Z: \\远程电脑IP\共享文件夹名 /user:用户名 密码
- 说明:
Z:
为映射的本地盘符(可自定义)。\\远程电脑IP\共享文件夹名
是远程共享路径,需确保远程电脑已开启文件夹共享。/user
后接远程电脑的用户名和密码,若为同一局域网且账户相同,可省略。
2. 复制文件到远程共享文件夹
copy 本地文件路径 Z:\
xcopy 本地文件路径 Z:\ /E /Y # 用于复制文件夹及子文件,/E包含空文件夹,/Y不询问覆盖
3. 从远程共享文件夹复制文件到本地
copy Z:\远程文件路径 本地保存路径
xcopy Z:\远程文件路径 本地保存路径 /E /Y
4. 断开网络连接
net use Z: /delete
二、使用robocopy
命令(更强大的复制工具)
robocopy
是Windows自带的高级复制命令,支持断点续传、镜像复制等功能,适用于大文件或大量文件传输。
1. 从本地复制到远程共享文件夹
robocopy 本地文件路径 \\远程电脑IP\共享文件夹名 /E /COPYALL /R:3 /W:5
- 关键参数说明:
/E
:复制子目录(包括空目录)。/COPYALL
:复制所有文件属性和权限。/R:3
:复制失败时重试3次。/W:5
:重试间隔5秒。
2. 从远程共享文件夹复制到本地
robocopy \\远程电脑IP\共享文件夹名 本地保存路径 /E /COPYALL
三、使用PSCP
命令(适用于跨系统或加密传输)
若远程Windows电脑配置了SSH服务(如通过OpenSSH开启),可使用PuTTY工具集中的pscp
命令(需提前下载PuTTY工具包):
1. 上传文件到远程Windows电脑
pscp 本地文件路径 用户名@远程电脑IP:远程保存路径
2. 从远程Windows电脑下载文件
pscp 用户名@远程电脑IP:远程文件路径 本地保存路径
- 说明:
- 需确保远程电脑已启用SSH服务(可通过Windows自带的OpenSSH或第三方工具开启)。
四、使用WinSCP
命令行(图形化工具的命令行模式)
WinSCP
是一款图形化SFTP/SSH文件传输工具,其命令行版本winscp.com
支持脚本化传输,适合需要进度显示或复杂操作的场景:
winscp.com /command ^
"open sftp://用户名:密码@远程电脑IP/" ^
"put 本地文件路径 远程保存路径" ^
"exit"
- 说明:
- 需提前安装WinSCP,命令中的
^
为换行符(Windows批处理中使用)。
- 需提前安装WinSCP,命令中的
五、使用PowerShell
命令(更灵活的脚本化传输)
1. 通过SMB协议复制(局域网共享)
# 映射网络驱动器
New-PSDrive -Name Z -PSProvider FileSystem -Root \\远程电脑IP\共享文件夹 -Credential (Get-Credential)# 复制文件
Copy-Item -Path "本地文件路径" -Destination "Z:\" -Recurse -Force# 断开映射
Remove-PSDrive -Name Z
2. 通过SSH/SFTP协议复制(需远程开启SSH)
# 需安装Posh-SSH等PowerShell模块
Install-Module -Name Posh-SSH# 连接远程服务器并传输文件
$session = New-SshSession -ComputerName 远程电脑IP -Credential (Get-Credential)
Send-SshFile -Session $session -LocalFile "本地文件路径" -RemotePath "远程保存路径"
Remove-SshSession -Session $session
选择建议
- 局域网内简单传输:优先使用
net use + copy/xcopy
或robocopy
,操作简便。 - 大量文件或复杂需求:
robocopy
支持更多参数(如日志、断点续传),更适合批量操作。 - 跨系统或加密传输:
PSCP
或WinSCP
(需SSH环境),安全性更高。 - 自动化脚本:
PowerShell
结合协议模块(如SMB、SSH),灵活性最强。
使用前需确保网络连通性、权限配置(如共享文件夹权限、SSH认证),以及工具的可用性(部分工具需手动安装)。