小编Bru*_*sky的帖子

jq:选择列表中的.attribute

在python中,我可以执行以下操作:

>>> 5 in [2,4,6]
False
>>> 5 in [4,5,6]
True
Run Code Online (Sandbox Code Playgroud)

确定给定值是否5存在于列表中。我想在中做同样的概念jq。但是,没有in。这是一个具有更实际数据集的示例,以及如何检查2个值。在我的真正需要中,我必须检查几百个并且不想将所有这些东西or放在一起。

jq '.[] | select(.PrivateIpAddress == "172.31.6.209"
                 or
                 .PrivateIpAddress == "172.31.6.229")
        | .PrivateDnsName' <<EOF
[
    {
        "PrivateDnsName": "ip-172-31-6-209.us-west-2.compute.internal",
        "PrivateIpAddress": "172.31.6.209"
    },
    {
        "PrivateDnsName": "ip-172-31-6-219.us-west-2.compute.internal",
        "PrivateIpAddress": "172.31.6.219"
    },
    {
        "PrivateDnsName": "ip-172-31-6-229.us-west-2.compute.internal",
        "PrivateIpAddress": "172.31.6.229"
    },
    {
        "PrivateDnsName": "ip-172-31-6-239.us-west-2.compute.internal",
        "PrivateIpAddress": "172.31.6.239"
    }
]
EOF
Run Code Online (Sandbox Code Playgroud)

membership arrays json jq

6
推荐指数
1
解决办法
1494
查看次数

如何获取死iOS设备的UDID?

我已经死了,丢失了,被盗等我的开发者帐户上的iOS设备,我已经使用了所有100个插槽.我有这些设备的序列号,但不知道删除它们的UDID.除了向Apple致敬之外,我能做些什么吗?

provisioning udid ios

5
推荐指数
1
解决办法
556
查看次数

celery celerybeat可以使用没有Django的数据库调度程序吗?

我有一个包括Django 的小型基础设施计划.但是,由于我对Django的经验,我非常喜欢Celery.我真正需要的只是Redis + Celery来制作我的项目.而不是使用本地文件系统,我想保留Redis中的所有内容.我的当前架构使用Redis处理所有内容,直到它准备好将结果转储到AWS S3.不可否认,我没有很好的理由使用Redis而不是文件系统.我刚刚投入了大量资源来设计Docker并考虑到可扩展性,感觉不对.

python redis celery celerybeat

5
推荐指数
1
解决办法
2679
查看次数

在Python中获取当前TTY的路径

如何获取当前TTY的设备路径?

Python有sys.stdin,sys.stdout并且os.ttyname而是因为它需要一个文件描述符,你不能传递任何前人的后者.

python command-line

5
推荐指数
1
解决办法
2188
查看次数

为 AWS Lambda 部署压缩虚拟环境时,我可以省略什么?

介绍

我刚刚开始使用 AWS Lambda,尽管我讨厌它,但我非常喜欢它。我创建了一个 Makefile 来帮助我打包我的虚拟环境并发送到 S3。在我发现加密需要在 site-packages 目录#GRRR 中有一个隐藏文件后,我开始想知道如何进一步改进我的打包过程。

语境

这就是新 Amazon Linux AMI EC2 实例上的新 virtualenv 的样子。

$ uname -srvm
Linux 4.4.51-40.58.amzn1.x86_64 #1 SMP Tue Feb 28 21:57:17 UTC 2017 x86_64

$ cat /etc/system-release
Amazon Linux AMI release 2016.09

$ virtualenv --version
15.1.0

$ pip --version
pip 9.0.1 from /usr/local/lib/python2.7/site-packages (python 2.7)

$ virtualenv temp
New python executable in /home/ec2-user/temp/bin/python2.7
Also creating executable in /home/ec2-user/temp/bin/python
Installing setuptools, pip, wheel...done.
Run Code Online (Sandbox Code Playgroud)

无花果。1 …

python amazon-ec2 virtualenv amazon-web-services aws-lambda

5
推荐指数
1
解决办法
4160
查看次数

使用 Curl 将记录插入 Amazon 的 DynamoDB(通过低级 API)

我正在尝试使用 Curl 将项目插入 DynamoDB 表中。我知道有 AWS SDK 和 AWS-CLI,但根据本文档,似乎也可以通过简单的 HTTP API 或Curl仅插入项目。

无论如何,我已经尝试了一段时间,但我不断收到此错误响应:

{"__type":"com.amazon.coral.service#SerializationException"}

有人可以告诉我我做错了什么吗?

这是我的脚本:

$date = date('r');
$priv_key = getenv('AWS_SECRET_ACCESS_KEY');
$access_key = getenv('AWS_ACCESS_KEY_ID');
$length = strlen($value);
$signature = base64_encode(hash_hmac('sha256', $date, $priv_key, TRUE));

$cmd = "\
    curl -d @test.json \
        -H \"Host: dynamodb.us-east-1.amazonaws.com;\" \
        -H \"Accept-Encoding: identity\" \
        -H \"Content-Length: $length\" \
        -H \"User-Agent: Curl\" \
        -H \"Content-Type: application/x-amz-json-1.0\" \
        -H \"Authorization: $access_key:$signature\" \
        -H \"X-Amz-Date: $date\" \
        -H \"X-Amz-Target: DynamoDB_20120810.PutItem\" \
        https://dynamodb.us-east-1.amazonaws.com\"\
";

print …
Run Code Online (Sandbox Code Playgroud)

curl libcurl amazon-web-services amazon-dynamodb aws-sdk

5
推荐指数
1
解决办法
4568
查看次数

如何调试 git 凭证助手?

我读过了:

\n\n\n\n

不幸的是,我无法让最基本的科学方法\xe2\x84\xa2 测试发挥作用。我已经使用我的替代命令来尝试记录 git 调用助手时发生的情况。不幸的是,我的命令没有记录任何内容。因此我被迫得出结论 git 没有调用它的助手。我能做些什么?

\n

git

5
推荐指数
1
解决办法
1615
查看次数

arc4random和%运算符

我对Objective-C中的arc4random()函数有疑问.

在我在网上看到的例子中,%在函数调用之后有一个符号.我认为是%模数运算符,这个符号在使用后有另一种意义arc4random()吗?它是如何工作的?

objective-c arc4random

3
推荐指数
1
解决办法
6353
查看次数

字典项目的顺序在创建时是否可靠**?

字典项目的顺序在创建时是否可靠?

注意:这不是所有人们希望dict表现为行为的问题的重复OrderedDict.

我想要做的是将json字典传递给AWS Lambda函数.该字典的大部分内容都来自open文件处理程序.它是这样的:

params = {
          "FunctionName": "log_load",
          "Payload": json.dumps({
                                 "header": fh.readline(),
                                 "start": fh.tell(),
                                 "data": fh.read(),
                                 "end": fh.tell()})}
result = lambda_client.invoke(**params)
Run Code Online (Sandbox Code Playgroud)

重要的是,按照列出的顺序调用fh对象上的所有这些方法.在稍后阅读时我不关心字典的顺序.

我可以依赖列出的顺序调用这4个函数吗?

我在下面创建了一个测试,它给了我可以证明的轶事证据.但是,我甚至无法得到pprint不按顺序显示字典的情况.所以,我对键与值匹配并不感到惊讶.

from pprint import pprint
r = range(100)
i = r.__iter__()

d = {
     0: i.__next__(),
     1: i.__next__(),
     2: i.__next__(),
     3: i.__next__(),
     4: i.__next__(),
     5: i.__next__(),
     6: i.__next__(),
     7: i.__next__(),
     8: i.__next__(),
     9: i.__next__(),
     10: i.__next__(),
     11: i.__next__(),
     12: i.__next__(),
     13: i.__next__(), …
Run Code Online (Sandbox Code Playgroud)

python dictionary

3
推荐指数
1
解决办法
54
查看次数

无法使用termios.TIOCSTI伪造终端输入

我见过的大多数代码示例都试图从没有本地回声的stdin读取.为此,他们修改"本地模式"标志以将设置删除为"回声输入字符".我想我可以修改"输入模式"标志TIOCSTI,用于"在输入队列中插入给定字节"..但是,即使我以root身份运行脚本,它也没有任何效果.我写给fd的任何东西似乎都转到终端输出,而不是终端输入.基本上我想要做的就是这个确切的事情,但在纯粹的python中.

"""
termfake.py

Usage: sudo python termfake.py /dev/ttys002

Get the tty device path of a different local termimal by running `tty`
in that terminal.
"""

import sys
import termios

fd = open(sys.argv[1], 'w')
fdno = fd.fileno()

# Returns [iflag, oflag, cflag, lflag, ispeed, ospeed, cc]
tatters = termios.tcgetattr(fdno)
print('original', tatters)
tatters[0] = termios.TIOCSTI
print('TIOCSTI', termios.TIOCSTI)

# Set iflag
termios.tcsetattr(fdno, termios.TCSANOW, tatters)

# Verify setting change
with …
Run Code Online (Sandbox Code Playgroud)

python linux terminal

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

我可以扩展一个 Objective-C Foundation 类以便它只影响我的实例吗?

我想创建一个返回NSDate. NSDate我的班级的用户可以使用 like应该是“正常的” NSDate *meetingDate = [meeting getDate];。但是当用户这样做时meetingDate.description,这是一个正常的属性/方法NSDate,我希望我的方法被调用以获取自定义格式。如果他们自己创建一个NSDate,我不希望.description改变的行为。

如何才能做到这一点?

objective-c nsdate

2
推荐指数
1
解决办法
194
查看次数