Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # Chemin du fichier de log pour l'état réseau
- LOG_FILE="/home/siindus/Documents/network_status_log.txt"
- # Fonction pour afficher un log horodaté
- log() {
- echo "$(date "+[%Y-%m-%d %H:%M:%S]") $1" >> "$LOG_FILE"
- }
- # Effacer le fichier de log précédent
- > "$LOG_FILE"
- log "Début de la vérification de l'état réseau"
- # Obtenir la liste des interfaces réseau, en excluant 'lo'
- interfaces=$(ifconfig | grep -E '^[a-zA-Z0-9]' | awk '{print $1}' | grep -v 'lo')
- if [ -z "$interfaces" ]; then
- log "Aucune interface réseau détectée."
- yad --error --title="État du Réseau" --text="Aucune interface réseau détectée." --center --width=300 --height=100
- exit 1
- fi
- # Parcourir chaque interface pour afficher ses informations
- for iface in $interfaces; do
- log "------------------------------------------------"
- log "Interface : $iface"
- # Vérifier si l'interface est active
- if ifconfig "$iface" | grep -q "inet "; then
- # Adresse IP
- ip_address=$(ifconfig "$iface" | grep "inet " | awk '{print $2}')
- # Masque de sous-réseau
- subnet_mask=$(ifconfig "$iface" | grep "inet " | awk '{print $4}')
- # Adresse MAC
- mac_address=$(ifconfig "$iface" | grep "ether" | awk '{print $2}')
- log "Adresse IP : ${ip_address:-Non attribuée}"
- log "Masque de sous-réseau : ${subnet_mask:-Non attribué}"
- log "Adresse MAC : ${mac_address:-Non attribuée}"
- else
- log "Interface inactive ou sans IP : $iface"
- fi
- log "------------------------------------------------"
- done
- # Afficher le contenu du fichier de log à l'utilisateur
- yad --text-info --title="État du Réseau" --filename="$LOG_FILE" --width=600 --height=400 --center --undecorated --skip-taskbar --ontop
Add Comment
Please, Sign In to add comment