4

我正在使用 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”中检测到具有相同命令行的不完整操作,是否要继续操作?

选择是恢复,选择否覆盖日记以开始新的操作。(是/否)是

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

远程服务器返回错误:(403) Forbidden。HttpStatusMessage:服务器未能验证请求。确保 Authorization 标头的值正确形成,包括签名。请求编号:

时间: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:” https://companystrg01.file.core.windows.net/bss日志文件“C:\Users\Administrator\AppData\Local\Microsoft\Azure\AzCopy\AzCopy.jnl”中的?sv=2016-05-31&si=bss-supersecretstring " /S" 与您的输入不同。

[2018/03/19 13:56:57][警告] 在日志目录“C:\Users\Administrator\AppData\Local\Microsof t\Azure\AzCopy”中检测到不同命令行的不完整操作。

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

传输的文件总数:1

转账成功:1

转移跳过:0

转移失败:0

经过时间:00.00:00:09

C:\ftp>


我会很感激一些指导。

谢谢你。

4

2 回答 2

5

您需要转义批处理文件中的特殊字符。在这里看到一个类似的问题:批量字符转义

于 2018-03-19T06:15:19.797 回答
2

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

于 2021-04-01T09:56:27.560 回答