#!/bin/bash # -*- coding: utf-8 mode: sh -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8 # frontend pour 'ip addr' qui formatte l'affichage pour prendre moins de place if [ -x /usr/bin/ip ]; then IP=/usr/bin/ip elif [ -x /bin/ip ]; then IP=/bin/ip else IP=ip fi if [ -n "IPADDR_COLOR" ]; then isatty=1 else tty -s <&1 && isatty=1 || isatty= fi "$IP" addr "$@" | awk -v isatty="$isatty" ' isatty && $0 ~ /^[0-9]/ { $0 = gensub(/: ([^:]+):/, ": \x1B[32m\\1\x1B[0m:", 1) } isatty && $1 == "inet" { $0 = gensub(/inet ([^ ]+) /, "inet \x1B[34m\\1\x1B[0m ", 1) } { if ($1 == "inet" || $1 == "inet6") { printf "%s -- ", $0 getline sub(/^ +/, "") } } { print }'