So habe ich ein bash
Skript, das Details auf Servern ausgibt. Das Problem ist, dass ich brauche, dass der Ausgang JSON
ist. Was ist der beste Weg, dies zu tun? Hier ist die Bash-Skript:Ausgabe von JSON aus Bash-Skript
# Get hostname
hostname=`hostname -A` 2> /dev/null
# Get distro
distro=`python -c 'import platform ; print platform.linux_distribution()[0] + " " + platform.linux_distribution()[1]'` 2> /dev/null
# Get uptime
if [ -f "/proc/uptime" ]; then
uptime=`cat /proc/uptime`
uptime=${uptime%%.*}
seconds=$((uptime%60))
minutes=$((uptime/60%60))
hours=$((uptime/60/60%24))
days=$((uptime/60/60/24))
uptime="$days days, $hours hours, $minutes minutes, $seconds seconds"
else
uptime=""
fi
echo $hostname
echo $distro
echo $uptime
So ist der Ausgang ich will, ist so etwas wie:
{"hostname":"server.domain.com", "distro":"CentOS 6.3", "uptime":"5 days, 22 hours, 1 minutes, 41 seconds"}
Dank.
Gibt es einen Grund, den Sie nicht alles von Python tun möchten? Ich meine, Sie verwenden es trotzdem, und Python kann den Hostnamen leicht ermitteln, die Betriebszeit lesen und den gewünschten JSON generieren. – willglynn