AzCopy 从 Windows 命令提示符失败的批处理文件中复制 运行

AzCopy copy run from a batch file in Windows command prompt failure

我正在使用 AzCopy 将文件从本地服务器复制到 Azure 并提出以下失败的操作是来自批处理文件的命令 运行。如果来自命令提示符的相同命令是 运行,则操作成功。


运行 来自批处理文件 - 失败:

C:\ftp>AzCopy /Source:C:\ftp\ /Dest:"https://companystrg01.file.core.wind ows.net/bss?sv=2016-05-31&si=bss-supersecretstring" /S

在日志目录“C”中检测到相同命令行的不完整操作 :\Users\Administrator\AppData\Local\Microsoft\Azure\AzCopy", 是否要恢复操作?

选择“是”恢复,选择“否”覆盖日志以开始新操作。 (Yes/No) y

[2018/03/19 13:50:22][ERROR] C:\ftp\board\file.TXT: 传输失败 编辑

远程服务器返回错误:(403) 禁止访问。 HttpStatusMessage:Server 未能验证请求。确定值 授权 header 的格式正确,包括签名。 RequestId:

时间:2018 年 3 月 19 日,星期一 03:50:05 GMT 共完成 0 个文件,共 1 个文件。 [2018/03/19 13:50:22]转会总结:

传输的文件总数:1

转账成功:0

传输已跳过:0

传输失败:1

经过的时间:00.00:00:04

==================================

运行 形成命令行 - 成功:

C:\ftp>AzCopy /Source:C:\ftp\ /Dest:"https://companystrg01.file.core.wind ows.net/bss?sv=2016-05-31&si=bss-supersecretstring" /S

[2018/03/19 13:56:57][警告]命令行“AzCopy /Source:C:\ftp\board\ /D est:"C:\Users\Administrator\AppData\ 日志文件中的"https://companystrg01.file.core.windows.net/bss?sv=2016-05-31&si=bss-supersecretstring" /S" Local\Microsoft\Azure\AzCopy\AzCopy.jnl" 与您的输入不同。

[2018/03/19 13:56:57][警告] 不同命令行的不完整操作 在日志目录“C:\Users\Administrator\AppData\Local\Microsoft t\Azure\AzCopy".

是否要覆盖日志以开始新的操作?选择是覆盖,选择否取消当前操作。 (Yes/No) 是 覆盖 https://companystrg01.file.core.windows.net/bss/file.TXT w 第一个 C:\ftp\board\file.TXT? (Yes/No/全部)是 共完成 1 个文件中的 1 个。 [2018/03/19 13:57:06]转会总结:

传输的文件总数:1

转账成功:1

传输已跳过:0

传输失败:0

经过的时间:00.00:00:09

C:\ftp>


我希望得到一些指导。

谢谢。

您需要对批处理文件中的特殊字符进行转义。在这里查看类似的问题:Batch character escaping

只需在您的 SAS 令牌中使用 %% 转义 % 符号,即使它包含在 "" 内!