You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure门户终端执行AzCopy提示命令未识别如何处理

报错原因

你遇到的“AzCopy未被识别为可执行程序”报错,来自两个核心问题:

  1. Azure门户的PowerShell Cloud Shell默认没有预置AzCopy工具,需要手动部署后才能调用
  2. 你脚本中使用的是旧版Windows平台AzCopy(v7/v8系列)的表操作语法,这类旧版本仅原生支持Windows系统,而Cloud Shell底层运行在Linux容器中,语法和运行环境都需要调整。

解决步骤

1. 先在Cloud Shell中部署AzCopy

在Cloud Shell的PowerShell提示符下依次执行以下命令,完成AzCopy的安装部署:

# 下载适配Linux的最新版AzCopy压缩包
wget https://aka.ms/downloadazcopy-v10-linux -O azcopy.tar.gz
# 解压压缩包
tar -xf azcopy.tar.gz --strip-components=1
# 将可执行文件移动到系统PATH路径下
sudo mv azcopy /usr/local/bin/
# 验证安装是否成功,正常返回版本号即部署完成
azcopy --version

2. 调整现有脚本的AzCopy调用语法

当前最新版AzCopy v10的表存储操作语法已更新,不再使用旧版/Source这类斜杠开头的参数,你需要把脚本中两处AzCopy的调用分别替换为新语法:

替换原表导出到Blob存储的代码:

原代码:

AzCopy /Source:$SrcTableUrl `
                  /Dest:$DstBlobUrl/$TableName `
                  /SourceKey:$SrcAccessKey `
                  /Destkey:$DstAccessKey

替换为:

azcopy copy $SrcTableUrl $DstBlobUrl/$TableName --source-key $SrcAccessKey --dest-key $DstAccessKey

替换原Blob导入到目标表存储的代码:

原代码:

AzCopy /Source:$DstBlobUrl/$TableName `
                  /Dest:$DstTableUrl/$TableName `
                  /SourceKey:$DstAccessKey `
                  /DestKey:$DstAccessKey `
                  /Manifest:$manifest `
                  /EntityOperation:"InsertOrReplace"

替换为:

azcopy copy $DstBlobUrl/$TableName $DstTableUrl/$TableName --source-key $DstAccessKey --dest-key $DstAccessKey --entity-operation InsertOrReplace

补充说明

  • Cloud Shell的临时存储会在会话超时后清空,每次重新打开Cloud Shell都需要重新执行部署步骤,你可以把部署命令写到脚本开头,每次运行自动完成AzCopy的部署
  • 若你需要迁移的表数据量较大,建议在本地Windows环境运行旧版AzCopy v7.3(对表存储操作支持最完善的Windows版本),避免Cloud Shell会话超时导致迁移任务中断

内容的提问来源于stack exchange,提问作者Alex Gordon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 17:45:03