Script bash connaitre tout les utilisateurs
Résolu
xunil2003
Messages postés
765
Date d'inscription
Statut
Membre
Dernière intervention
-
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
zipe31 Messages postés 36402 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Je cherche a faire un script pour données des droits a tout les utilisateurs pour chacun de mes postes.
Pour connaitre tout les utilisateurs
Il m'affiche
[sandrine@localhost ~]$ cat /etc/group | fgrep 50
sandrine:x:500:
lea:x:501:
jean-pierre:x:502:
maintenance:x:503:
[sandrine@localhost ~]$
après j'ai pensé a faire
le but est de récupérer uniquement les noms des utilisateurs pour qu'il s'ajoute automatiquement chacun dans le groupe de partage reseau
En gros faire ceci automatiquement :
Auriez -vous une idée de comment faire ?
Merci.
Je cherche a faire un script pour données des droits a tout les utilisateurs pour chacun de mes postes.
Pour connaitre tout les utilisateurs
utilisateurs="cat /etc/group | fgrep 50" $utilisateurs | while read users; do echo "resultat :" $users done echo "" echo "resultat de utilisateurs :" $utilisateurs
Il m'affiche
[sandrine@localhost ~]$ cat /etc/group | fgrep 50
sandrine:x:500:
lea:x:501:
jean-pierre:x:502:
maintenance:x:503:
[sandrine@localhost ~]$
après j'ai pensé a faire
$ dir -c /home sandrine jean-pierre lea maintenance lost+found
le but est de récupérer uniquement les noms des utilisateurs pour qu'il s'ajoute automatiquement chacun dans le groupe de partage reseau
En gros faire ceci automatiquement :
# adduser sandrine partage_reseau. # adduser lea partage_reseau # adduser jean-pierre partage_reseau # adduser maintenance partage_reseauvia un variable.
Auriez -vous une idée de comment faire ?
Merci.
A voir également:
- Script bash connaitre tout les utilisateurs
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Bingo bash - Télécharger - Divers Jeux
- Bash addition ✓ - Forum Shell
5 réponses
Bonjour,
Si « cat /etc/group | fgrep 50 » te renvoie bien tous les users, et rien que eux, alors essaye :
cat /etc/group | fgrep 50 | cut -d: -f1
Et normalement tu auras ce que tu cherches à obtenir...
bonne chance
Si « cat /etc/group | fgrep 50 » te renvoie bien tous les users, et rien que eux, alors essaye :
cat /etc/group | fgrep 50 | cut -d: -f1
Et normalement tu auras ce que tu cherches à obtenir...
bonne chance
bonjour,
quand je fait ceci
il m'affiche
Directement dans le shell ça marche
Merci.
quand je fait ceci
$utilisateurs="cat /etc/group | fgrep 50 | cut -d: -f1" $utilisateurs | while read users; do echo "resultat :" $users #done done echo "" echo "resultat de utilisateurs :" $utilisateurs
il m'affiche
utilisateur.sh: ligne2: =cat /etc/group | fgrep 50 | cut -d: -f1: Aucun fichier ou dossier de ce type
Directement dans le shell ça marche
$ cat /etc/group | fgrep 50 | cut -d: -f1 sandrine lea jean-pierre
Merci.
Salut tuxboy,
Attention avec la mise en page du forum qui ne prend pas en compte les quotes inversées ;-((
De toute façon cette syntaxe est quasiment obsolète, mieux vaut lui préféré "$(commande)" :
Sans compter que la création de cette variable n'est pas nécessaire ;-)
Attention avec la mise en page du forum qui ne prend pas en compte les quotes inversées ;-((
De toute façon cette syntaxe est quasiment obsolète, mieux vaut lui préféré "$(commande)" :
utilisateurs=$(cat /etc/group | fgrep 50 | cut -d: -f1)
Sans compter que la création de cette variable n'est pas nécessaire ;-)
Salut,
while read name do echo "adduser ${name} partage_reseau" done < <(awk -F":" '/x:50/ { print $1 }' /etc/group)
Bonjour,
merci pour vos réponses.
Dans le fichier "smb.conf" il faut que j'ajoute les utilisateurs autorisé en écriture, comme ceci :
avec une variable
mais pour avoir la liste des utilisateurs sur une seul ligne avec un espace entre chaque nom d'utilisateur, comment dois je faire ?
Merci.
merci pour vos réponses.
Dans le fichier "smb.conf" il faut que j'ajoute les utilisateurs autorisé en écriture, comme ceci :
write list = sandrine lea jean-pierre maintenance
avec une variable
write list = $les_utilisateurs
mais pour avoir la liste des utilisateurs sur une seul ligne avec un espace entre chaque nom d'utilisateur, comment dois je faire ?
Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
J'ai besoin d'ajoute tous les utilisateurs directement dans le fichier
a la fin de la ligne
Afin d'obtenir
Dans le genre
#!/bin/bash
cp -v /etc/group /etc/group.bak
usersh=$(awk -F":" '/x:50/ { print $1 }' /etc/group)
//......
//Mais comment lui dire de les ajouter a la fin de la ligne ${usersh}
//------
comment dois je faire ?
Merci.
J'ai besoin d'ajoute tous les utilisateurs directement dans le fichier
/etc/group
a la fin de la ligne
users:x:100:
Afin d'obtenir
users:x:100:sandrine,lea,jean-pierre,maintenance
Dans le genre
#!/bin/bash
cp -v /etc/group /etc/group.bak
usersh=$(awk -F":" '/x:50/ { print $1 }' /etc/group)
//......
//Mais comment lui dire de les ajouter a la fin de la ligne ${usersh}
//------
comment dois je faire ?
Merci.