Amazon web services 从s3 cp命令到gzip的Powershell管道标准输出

Amazon web services 从s3 cp命令到gzip的Powershell管道标准输出,amazon-web-services,powershell,amazon-s3,pipe,gzip,Amazon Web Services,Powershell,Amazon S3,Pipe,Gzip,尝试在Windows 10上使用Powershell,使用aws s3 cp命令从s3存储桶下载一个小的.gz文件 我正在通过管道将s3cp的输出传输到gzip-d进行解压缩。我的目标是基本上复制、解压和显示内容,而不在本地保存.gz文件 阅读s3 cp命令的官方Amazon文档时,会提到以下内容: 将S3对象下载为本地文件流 警告::PowerShell可能会更改管道或>重定向输出的编码或向其添加CRLF 下面是我从powershell执行的命令: PS C:\> aws s3 cp

尝试在Windows 10上使用Powershell,使用aws s3 cp命令从s3存储桶下载一个小的.gz文件

我正在通过管道将
s3cp
的输出传输到
gzip-d
进行解压缩。我的目标是基本上复制、解压和显示内容,而不在本地保存.gz文件

阅读s3 cp命令的官方Amazon文档时,会提到以下内容:

将S3对象下载为本地文件流

警告::PowerShell可能会更改管道或>重定向输出的编码或向其添加CRLF

下面是我从powershell执行的命令:

PS C:\> aws s3 cp s3://my-bucket/test.txt.gz - | gzip -d
返回以下错误:
gzip:stdin:不是gzip格式的

从Windows命令提示符下运行该命令时效果很好,但我似乎无法让它与Powershell一起工作

在Windows命令提示符下,它可以正常工作:

C:\Windows\system32>aws s3 cp s3://my-bucket/test.txt.gz - | gzip -d
一些样本测试数据输出如下:

first_name  last_name   
----------  ----------
Ellerey     Place       
Cherie      Glantz      
Isaak       Grazier     

作为一种解决方法,您可以使用
cmd.exe/c“aws s3 cp s3://my bucket/test.txt.gz-|gzip-d”
从powershell运行cmd命令。无论如何,我建议使用aws powershell模块,该模块相当于aws CLI,但设计为powershell使用,请看我在这里的回答:作为一种解决方法,您可以使用
cmd.exe/c“aws s3 cp s3://my bucket/test.txt.gz-|gzip-d”从powershell运行cmd命令。
无论如何,我建议使用aws powershell模块,该模块相当于aws CLI,但设计为powershell使用,请看我的回答: