sql - 适用于 S3 Select 的 AWS CLI

标签 sql amazon-web-services amazon-s3

我有以下代码,用于对位于 S3 存储桶中的 key 文件运行 SQL 查询。这运行完美。我的问题是,我不希望将输出写入输出文件。我能在屏幕上看到输出吗(我的偏好 #1)?如果没有,那么附加到输出文件的能力如何,而不是覆盖它(我的偏好#2)。我正在使用 AWS-CLI 二进制文件来运行此查询。如果有另一种方式,我很乐意尝试(只要它在 bash 内)

aws s3api select-object-content \
--bucket "project2" \
--key keyfile1 \
--expression "SELECT * FROM s3object s where Lower(s._1) = 'email@search.com'" \
--expression-type 'SQL' \
--input-serialization '{"CSV": {"FieldDelimiter": ":"}, "CompressionType": "GZIP"}' \
--output-serialization '{"CSV": {"FieldDelimiter": ":"}}' "OutputFile"

最佳答案

当然,您可以使用 AWS CLI 来执行此操作,因为 stdout只是linux中的一个特殊文件。

aws s3api select-object-content \
--bucket "project2" \
--key keyfile1 \
--expression "SELECT * FROM s3object s where Lower(s._1) = 'email@search.com'" \
--expression-type 'SQL' \
--input-serialization '{"CSV": {"FieldDelimiter": ":"}, "CompressionType": "GZIP"}' \
--output-serialization '{"CSV": {"FieldDelimiter": ":"}}' /dev/stdout
请注意 /dev/stdout到底。

关于sql - 适用于 S3 Select 的 AWS CLI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63445534/

相关文章:

sql - 如何对连续范围进行分组

java - 如何使用 Jedis 连接到 AWS ElastiCache for Redis 集群?

amazon-web-services - 如何在 AWS CloudFormation 模板中的 Elastic Beanstalk 实例上设置运行状况检查 URL?

amazon-s3 - 在aws cli中的ls返回 "PRE"。为什么以及如何摆脱它

php - 将查询结果从灯组传输到另一个灯组

mysql - 优化 mysql 查询以在按位 where 子句上使用索引

sql - 如何根据值限制返回的列?

java - 连接()失败(111 : Connection refused) while connecting to upstream. Java(SparkJava)亚马逊弹性

ruby-on-rails - Git 推送到 Amazon S3 以部署 Assets ?

amazon-s3 - 带有 Cloudflare 的 S3 不允许直接访问