Ich habe eine Ausgabe von json-Format wie untenParsen json Objekt Spalte in Linux
{
"ip": "0.0.0.0",
"hostname": "No Hostname",
"city": "Beijing",
"region": "Beijing Shi",
"country": "CN",
"loc": "39.9289,116.3883",
"org": "AS55967 Beijing Baidu Netcom Science and Technology Co., Ltd."
}
ich brauche Werte von Land und Stadt, wie unten
CN Beijing
i unter jq Befehl verwendet habe und sed Befehl, um Land anzuzeigen, aber nicht, wie man Stadt als andere Spalte anzeigt.
jq
curl -s ipinfo.io/0.0.0.0 | jq '.country'
sed
curl -s ipinfo.io/0.0.0.0 | sed '/country/!d' | sed s/\"country\":\ //g | sed 's/\"//g' | sed 's/\,//g'
Der Ausgang dieses Land und Stadt Spalten sollte unter
2016-03-29 00:05:23 0.0.0.0 CN Beijing 10.0.0.197
2016-03-29 00:56:37 1.1.1.1 FR France 10.0.1.117
2016-03-29 00:57:20 2.2.2.2 FR France 10.0.0.197
bis 4. & 5. Spalte einer anderen CSV-Datei Probe hinzugefügt werden
'jq -j '.country," ", .city," \ n "''? Dann 'Paste andere_Datei jq_output'? –