Bonjour, je viens de tester le script et celui-ci me retourne une erreur:
- bash : erreur ligne 4 : caractère inattendue "("
- bash :erreur ligne 4 : `(nmap -sP -oG - 10.0.[12].0/24 | awk '/^Host/{print $2}')'
Voici le script que je voudrais ececuter sur les PC depuis le serveur de fichier :
#!/bin/bash
# Modification du Hostname
beforelastoctet=$(hostname -I | awk '{print$1}' | cut -d. -f3)
lastoctet=$(hostname -I | awk '{print$1}' | cut -d. -f4)
if [ "$beforelastoctet" = "100" ]
then
newname=ABEILLE-$lastoctet
else
newname=BAOBAB-$lastoctet
fi
hostnamectl set-hostname $newname
# Suppression des utilisateurs actuels
grep home /etc/passwd | awk -F : '$3>=1000 && $3<=1100 {print$3}' > uid
cat uid | while read user
do
userdel -r -f "${user}"
# Création des nouveaux utilisateurs via un fichier
cat utilisateurs | while IFS=, log password
do
password=$password
username=$log
useradd -m $username -p $(openssl passwd $password) -d /home/$username -s /bin/bash
done
exit 0
D'ailleurs concernant ce script y a t il moyen de l'améliorer / optimiser. Dois je rajouter les utilisateurs créé dans un groupe et créer un admin sur chaque pc à mettre dans le groupe sudoers.
Merci pour tes conseils