Skip to content

Bash

Synthèse d'usage disque

$ du -s -B1 * | sort -nr  | numfmt --to=iec
62M share_rdp
16M Vidéos
16M Téléchargements

Parser les logs selon la date

Récupérer les 10 dernières minutes

sed -n "/^$(LANG=C date --date='10 minutes ago' '+%b %_d %H:%M')/,\$p" /var/log/messages

Sed entre un match et la prochaine ligne vide (radius acct ex)

sed -n "/A4:BB:6D:49:42:F1/,/^$/p" /var/log/radius/radacct/*/detail-20240905 

Supprimer les blancs

sed '/^[[:blank:]]*#/d;s/#.*//' FILE

Afficher les gros fichiers

find . -type f -size +500000k -exec ls -lh {} \; | awk '{ print $9 ": " $5 }'

Tests de perf

vmstat -tw 1 5
vmstat -S M -tw 1 5
iostat -c 1 5
iostat -d 1 5
iostat -dxm 1 5

Synthese des connexions

last -da | awk '{print $1 " " $NF}' | sort | uniq -c

Fichiers vides

find . -type l | perl -lne 'print if ! -e' ; find . -type f -size 0

Du python dans bash

Pour traduire de l'azerty en qwerty par exemple

azerty_to_qwerty() {
pystring="$1" python - >> EOF
import os
from string import maketrans
trans = maketrans('aAzZqQwW;:1234567890','qQwWaAzZmM!@#$%^&*()')
print os.environ["pystring"].translate(trans)
EOF
}
azerty_to_qwerty "salut ca va ?"