Scrip Shell

Fermé
gabytech Messages postés 92 Date d'inscription lundi 28 mai 2007 Statut Membre Dernière intervention 6 décembre 2009 - 18 nov. 2009 à 22:40
jivef Messages postés 927 Date d'inscription mercredi 11 août 2004 Statut Membre Dernière intervention 12 novembre 2020 - 19 nov. 2009 à 19:42
Bonjour,

Je voudrais savoir exactement ce que fait ce scrip:



# By default, we want this to get set.
# Even for non-interactive, non-login shells.
if [ $UID -gt 99 ] && [ "`id -gn`" = "`id -un`" ]; then
umask 027
else
umask 022
fi


Si quelqu'un a une idée merci d'avance
A voir également:

5 réponses

Pierrecastor Messages postés 41466 Date d'inscription mercredi 5 novembre 2003 Statut Modérateur Dernière intervention 5 avril 2024 4 132
18 nov. 2009 à 22:45
Salut

Ces doc devrait t'aider a y voire claire :

http://www.commentcamarche.net/contents/unix/unix-users.php3
http://www.loligrub.be/contrib/tlepoint/BASE/node143.html

En très gros, ça vérifie ton groupe d'utilisateur, et ça change les permissions de base quand tu crée un fichier selon ce groupe.

Enfin un truc comme ça, je ne m'y connais pas suffisamment pour tout décoder.
0
gabytech Messages postés 92 Date d'inscription lundi 28 mai 2007 Statut Membre Dernière intervention 6 décembre 2009 7
18 nov. 2009 à 23:14
Merci Pierrecastor, mais ça ne resoud pas vraiment mon pb
0
Pierrecastor Messages postés 41466 Date d'inscription mercredi 5 novembre 2003 Statut Modérateur Dernière intervention 5 avril 2024 4 132
18 nov. 2009 à 23:21
Ben quel est ton probleme ?
0
jivef Messages postés 927 Date d'inscription mercredi 11 août 2004 Statut Membre Dernière intervention 12 novembre 2020 306
19 nov. 2009 à 01:35
Bonjour,

Peux-tu nous dire dans quel contexte poses-tu cette question ?

Si tu veux en savoir plus, il faut tout nous dire car visiblement il en manque un morceau...

Le shell script n'est pas le C, mais il faut tout de même définir les variables... Et la définition peut donner des indications à la compréhension de ce script...

Pour info, lorsqu'après la commande "if" tu trouves des crochets, ces crochets sont " l'équivalent de la commande "test."

l'option -gt de la commande test signifie greater than : plus grand que.
Par contre, -gn, je ne vois pas.

Donc si tu fais "man test" dans une console, tu auras déjà quelques infos.

quand au "&&", c'est un opérateur logique. (ET LOGIQUE).

Donc tu as deux tests qui se suivent et si toutes les conditions sont réunies, alors il effectue la commande prévue, (umask=027) sinon... c'est l'autre commande : umask=022

Mais à quoi ca sert ? Me demanderas-tu ...
Début de réponse :
Un "umask" comment ça marche ?
Et bien c'est un masque que l'on position sur un dossier pour la création des fichiers, il faut soustraire le masque pour avoir la réalité du droit.

022 signifie que le owner aura le droit 7-0=7, le groupe 7-2=5 et les autres 7-2=5
Donc 755

027 signifie que owner aura le droit 7-0=7, le groupe aura le droit 7-2=5 et les autres 7-7=0 donc aucun accès.
Donc 750

Mais comme il en manque des morceaux, je ne peux pas t'en dire plus.

Cordialement.
Jonas.
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
19 nov. 2009 à 08:39
Salut,

Excellente explication.

Par contre, -gn, je ne vois pas.
Ça ne concerne pas le test, mais c'est les options de "id", extrait du "man id" :

   OPTIONS
       -a     Ignoré, pour compatibilité.

       -g, --group
              Afficher uniquement le Group-ID.

       -G, --groups
              Afficher uniquement les groupes supplémentaires.

       --help Afficher un message d'aide sur la sortie standard et se terminer
              normalement.

       -n, --name
              Afficher  les  noms  de  groupe  ou  d'utilisateur à la place du
              numéro d'ID.  Nécessite -u, -g, ou -G.

;-))
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jivef Messages postés 927 Date d'inscription mercredi 11 août 2004 Statut Membre Dernière intervention 12 novembre 2020 306
19 nov. 2009 à 19:42
Bonjour,
En effet, j'ai mal lu et je n'avais pas vu "id" avant.
Désolé...

Mais alors là, comme d'habitude, tu as été épatant...

A plus.
0