这是我的场景
Invoke-sqlcmd -query "Select * from master.sys.table" -ServerInstance myserver -database -mydb | convert-csv | select -skip 2 | .\7z.exe a -si tgzip $gzipedfilename 现在我使用$gzipedfilename并使用azcopy上传到blob存储。当我在多个线程中运行上面的脚本时,这会导致巨大的磁盘I/O和队列。我正在尝试对上面脚本的输出进行管道Azcopy,方法是
| .\7z.exe a -si tgzip -so | Azcopy -----但我不知道Azcopy是否支持管道以及如何支持。有人能帮帮忙吗?或者,有没有其他方法可以绕过整个中间压缩文件来实现这一点?
发布于 2019-09-17 23:20:05
我使用azcopy_windows_amd64_10.2.1查看了他们的帮助
.\azcopy.exe copy --help这表明您可以使用管道,至少现在可以使用块blob
Upload a single file with a SAS using piping (block blobs only):
- cat "/path/to/file.txt" | azcopy cp "https://..../[container]/[path/to/blob]?[SAS]"发布于 2017-04-05 11:39:50
目前AzCopy不支持管道。如果您希望AzCopy在将来支持它,您可以在http://aka.ms/azcopy下提出您的反馈。
发布于 2021-02-23 18:11:50
支持,现在支持example:
cat testfile.txt | azcopy copy "https://[storage-account].blob.core.windows.net/[container]/[filename]?[sas_token]" --from-to PipeBlob
https://stackoverflow.com/questions/43213890
复制相似问题