Sinon j'ai fait un chti script qui a pour but de convertir la config réseau de mes serveurs Linux en syntaxe wiki, le résultat est ensuite posté dans dokuwiki. C'est pas super élégant, ça à l'air fiable, et sûrement pas portable (tant qu'on a pas testé...).
Exemple de résultat :
# wikisys
Posté par champix . En réponse au message Récupérer les infos réseau. Évalué à 3.
export LANG=C # Table header echo "^ Interface ^ MAC ^ IP ^ Masque ^ Network ^" # Parse ifconfig with awk, results one line per interface ifconfig | awk -F " *" ' # Each interface definition ends with an empty line, # even the last one. When an empty line is found we # print the results. 0ドル == "" { print iface" "mac" "ip" "masque iface = mac = ip = masque = "?" next } # Get interesting values 1ドル !~ /^ *$/ { iface = 1ドル } 2ドル ~ /^inet$/ { split( 3,ドル a_res, ":" ); ip = a_res[2] } 4ドル ~ /^Mask:/ { split( 4,ドル a_res, ":" ); masque = a_res[2] } 5ドル ~ /^Mask:/ { split( 5,ドル a_res, ":" ); masque = a_res[2] } 4ドル == "HWaddr" { mac = 5ドル } ' | while read iface mac ip masque do # ipcalc gets network address and CIDR notation net=$( ipcalc -bn $ip"/"$masque | awk -F " *" '/Network:/ { print 2ドル }' ) # print each line echo '| '$iface' | '$mac' | '$ip' | '$masque' | '$net' |' doneEt Pour mettre en forme les routes de la manière suivante : J'utilise :LANG=C route -n | awk -F " *" ' NR == 2 { print "^ "8ドル" ^ "1ドル" ^ "3ドル" ^ "2ドル" ^ "; next } NR >=3 { print "| "8ドル" | "1ドル" | "3ドル" | "2ドル" |" } '