Script Suppression Dossier Utilisateur

Résolu/Fermé
snoopsnake3 - 15 nov. 2017 à 13:31
 snoopsnake3 - 16 nov. 2017 à 05:44
Bonjour,

Je cherche en shell a comparer 2 fichiers, un fichier /utilisateurs (qui contient les utilisateurs ayant un dossier dans /home) et le fichier /etc/passwd (qui contient tout les utilisateurs). Si un utilisateur présent dans /utilisateurs n'existe pas dans /etc/passwd alors le dossier avec le nom manquant sera écrasé dans /home/lesnomsmanquants.

Je suis un peu perdu.

#!/bin/bash
ls /home > /utilisateurs
grep -f /utilisateurs /etc/passwd
if [ si tout les utilisateurs de /utilisateurs sont presents dans /etc/passwd ]
then "rien ne se passe"
else
rm les dossiers avec les noms manquants dans /home
fi

Je vous demande donc de l'aide.

Merci.
A voir également:

3 réponses

UnGnU Messages postés 1158 Date d'inscription lundi 2 mai 2016 Statut Contributeur Dernière intervention 22 décembre 2020 157
15 nov. 2017 à 14:33
Salut,

Testes ça :
#! /bin/bash

for i in /home/*
do grep -qw "${i}" /etc/passwd || (echo "Suppression de ${i}" && file "${i}")
done


Si la sortie sur l'écran te plaît, tu remplaces
&& file "${i}"
par
&& rm -rvf "${i}"
.

;-)
1
snoopsnake3 Messages postés 3 Date d'inscription mercredi 15 novembre 2017 Statut Membre Dernière intervention 3 décembre 2017
15 nov. 2017 à 15:01
Merci pour la reponse rapide, je teste ça demain dans la matinée puis je vous fais un retour.
Cordialement.
0
snoopsnake3
16 nov. 2017 à 05:44
Bonjour,
Je viens de tester le script, parfait.
Merci, je passe le sujet en résolu.
Cordialement.
0