Newgrp dans .profile

Fermé
remek - 29 oct. 2009 à 12:20
dubcek Messages postés 18752 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 3 octobre 2024 - 29 oct. 2009 à 15:21
Bonjour,

je travaille sur un serveur sous Linux et souhaiterais changer mon fichier ".profile" pour me donner le choix, au lancement, de changer de groupe de travail. J'ai ecrit le code suivant:

$ r="y"
$ read -t 5 -p "Travailler dans le groupe PARIS ? (y/n) " r
$
$ if [ "$r" == "y" ]
$ then
$ newgrp PARIS
$ echo "Vous travaillez maintenant dans le groupe PARIS"
$ else
$ echo "Vous ne travaillez pas dans le groupe PARIS"
$ fi
$
$ s="/home/moi/monchemin/"

L'idee est de choisir entre deux environnements de travail au lancement, et de definir des variables (qui peuvent eventuellement changer selon le groupe de travail retenu).

Cela fonctionne bien, excepte que si je reponds "y", le message "Vous travaillez maintenant dans le groupe PARIS" n'apparait pas comme attendu et ma variable "s" n'est pas sauvegardee... Je pense que c'est parce que "newgrp" lance un nouveau shell, et donc les commandes qui suivent sont simplement ignorees...

Quelqu'un aurait-il une idee pour resoudre ce probleme ?

Merci d'avance pour votre aide !

remek
A voir également:

1 réponse

dubcek Messages postés 18752 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 3 octobre 2024 5 619
29 oct. 2009 à 15:21
hello
il me semble que ce n'est pas possible parce que comme tu le dis, newgrp lance un shell.
si tu veux exécuter plusieurs commandes en changeant de groupe, dans un script par ex., tu peux faire
newgrp group << XX
commande1
commande2
XX
0