小编mg0*_*g03的帖子

Amazon AWS S3通过Wget签名URL

我可以在我的帐户中为存储桶创建一个Amazon S3签名URL,我可以通过Amazon AWS CLI下载并上传该存储桶.

我创建了Amazon S3 URL,如下所示:

from boto.s3.connection import S3Connection
key = os.environ['aws_access_key_id']
secret = os.environ['aws_secret_access_key']
c = S3Connection(key,secret,is_secure=False)
bucket = c.get_bucket('my-bucket')
bktkey = bucket.get_key('stuff.tar.gz')
seconds=60*60*12
url2 = bktkey.generate_url(expires_in=seconds)
print '%s' %url2
Run Code Online (Sandbox Code Playgroud)

url2在Chrome中使用并复制粘贴它,我下载了stuff.tar.gz.

但是当我像这样使用Wget时

wget <whatever is in url2>
Run Code Online (Sandbox Code Playgroud)

我得到以下异常,

HTTP request sent, awaiting response... 403 Forbidden
2015-12-04 20:48:57 ERROR 403: Forbidden.
Run Code Online (Sandbox Code Playgroud)

为什么Wget在Chrome和Firefox使用签名的Amazon S3 URL成功下载的地方失败了?

signed amazon-s3

10
推荐指数
1
解决办法
6443
查看次数

golang无法执行二进制文件:exec格式错误

我的环境

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH=""
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GO15VENDOREXPERIMENT=""
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
Run Code Online (Sandbox Code Playgroud)

我在我的mac上编译并成功执行了二进制文件,然后将其复制到上面显示go env的ubuntu机器上.当我调用myprog二进制文件时,我得到了

bash: /usr/local/go/bin/myprog: cannot execute binary file: Exec format error
Run Code Online (Sandbox Code Playgroud)

go

10
推荐指数
2
解决办法
3万
查看次数

jq查找其值为包含特定元素的数组的键

文件是

{
    "ContentKey--4-0-47--Vovb1BQ": ["infra", "qa", "qa-ContentKey-4-0-47-Vovb1BQ", "internal-qa-Conten-WebServi-19E4PUWHRGD44-460820639.us-east-1.elb.amazonaws.com", "plan--default"],
    "ContentKey--4-0-47--zjOkiQ": ["svc", "dev", "dev-ContentKey-4-0-47-zjOkiQ", "dev-Conte-WebServi-KXJXZBDY113W-2116785917.us-east-1.elb.amazonaws.com", "plan--default"],
    "IdGenService--2001-4-22--CJUFaMQ": ["svc", "dev", "dev-IdGenService-2001-4-22-CJUFaMQ", "dev-IdGen-WebServi-R7RVXSYAV92W-304073075.us-east-1.elb.amazonaws.com"],
    "IdGenService--2001-4-22--Uhf9CTQ": ["svc", "qa", "qa-IdGenService-2001-4-22-Uhf9CTQ", "internal-qa-IdGenS-WebServi-RT5BI5EEVZP3-665537643.us-east-1.elb.amazonaws.com"]
}
Run Code Online (Sandbox Code Playgroud)

我想找到其数组值具有条目的键列表 svc

我可以得到以下工作

cat list.json | jq '. | map(select (. | contains(["svc"])))'
Run Code Online (Sandbox Code Playgroud)

但输出是值数组而不是键本身

[
  [
    "svc",
    "dev",
    "dev-ContentKey-4-0-47-zjOkiQ",
    "dev-Conte-WebServi-KXJXZBDY113W-2116785917.us-east-1.elb.amazonaws.com",
    "plan--default"
  ],
  [
    "svc",
    "dev",
    "dev-IdGenService-2001-4-22-CJUFaMQ",
    "dev-IdGen-WebServi-R7RVXSYAV92W-304073075.us-east-1.elb.amazonaws.com"
  ],
  [
    "svc",
    "qa",
    "qa-IdGenService-2001-4-22-Uhf9CTQ",
    "internal-qa-IdGenS-WebServi-RT5BI5EEVZP3-665537643.us-east-1.elb.amazonaws.com"
  ]
]
Run Code Online (Sandbox Code Playgroud)

arrays json key jq

4
推荐指数
2
解决办法
1637
查看次数

标签 统计

amazon-s3 ×1

arrays ×1

go ×1

jq ×1

json ×1

key ×1

signed ×1