如何将本地机器含子目录的目录传输至Azure VM?
嘿,我来分享几个把本地带子目录的文件夹传到Azure VM的最简方法,根据你的VM系统选就行,都是操作起来没什么门槛的:
针对Windows虚拟机
方法1:RDP直接拖拽(零额外工具,首选)
只要你已经通过RDP连上了VM,这绝对是最省事的:
- 打开本地的文件资源管理器,找到要传的整个目录
- 直接把文件夹拖进RDP窗口里的任意位置(比如VM的桌面或者D盘某个文件夹)
- 等着传输完就行,子目录和里面的文件都会完整保留,连结构都不会乱
方法2:压缩后上传再解压
如果文件夹里文件太多,拖拽容易卡,就先把本地目录压缩成ZIP包:
- 右键文件夹选「发送到」→「压缩(zipped)文件夹」
- 要么通过RDP拖这个ZIP包到VM,要么用Azure门户的「运行命令」里的PowerShell脚本把ZIP传上去
- 在VM里右键ZIP包选「全部提取」,就能还原出完整的目录结构
针对Linux虚拟机
方法1:SCP命令(自带工具,不用额外装)
不管你本地是Linux、macOS还是装了Git Bash/WSL的Windows,都能用这个命令:
- 打开本地终端,输入:
scp -r /本地目录的绝对路径 你的VM用户名@VM公网IP:/VM里的目标路径
举个例子:scp -r /Users/me/myproject azureuser@20.xx.xx.xx:/home/azureuser/myproject - 输入VM的登录密码(或者用SSH密钥验证更安全),等着传输完成就行,
-r参数就是用来递归传子目录的
方法2:压缩上传+解压
和Windows思路一样,先把本地目录压成ZIP或者TAR包:
- 本地终端执行
tar -czf myfiles.tar.gz /本地目录路径(Linux/macOS),Windows的话用右键压缩 - 把压缩包传到Azure存储的Blob容器(门户里点几下就能传),然后在VM的「运行命令」里选
RunShellScript,用wget或者azcopy下载压缩包 - 最后执行
tar -xzf myfiles.tar.gz -d /目标目录解压,就能得到完整的目录结构
内容的提问来源于stack exchange,提问作者PARTH SURESH
相关产品推荐
相关产品推荐

