Probleme shell

Fermé
chrisotphe1371 - 8 oct. 2007 à 10:33
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 8 oct. 2007 à 13:17
Bonjour,
j'aimerai recuperer les droits d'un fichier, le nom d'utilisateur ainsi que le nom du groupe
droits=`ls -l nom_fichier| cut -d" " -f1 `
user=`ls -l nom_fichier| cut -d" " -f3`
group=`ls -l nom_fichier| cut -d" " -f4`

je recupere bien les droits mais je n'arrive pas a recuperer ni le user ni le group, ces variables sont vides. comment faire?

merci
A voir également:

7 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
8 oct. 2007 à 10:46
Salut,

user=$(ls -l fichier| awk '{print $3}')
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
8 oct. 2007 à 10:48
Salut,

Affiche la sortie de ton "ls -l" s'il te plaît, merci.

Sinon regarde du côté de la commande "stat" :
stat -c "Droits : %a  Utilisateur : %U  Groupe : %G" ton_fichier
;-))
0
chrisotphe1371
8 oct. 2007 à 11:01
Bonjour,
pour tester si un fichier a les droits en lecture on peut faire if [ -r nom_du_fichier ] then ...
J'ai tester cette commande sur un fichier auquel j'ai retirer les droits en lecture mais il rentre quand meme dans la boucle...
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
8 oct. 2007 à 11:05
Affiche la sortie de ton "ls -l" ainsi que ta boucle (ou ton script), merci !
0

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

Posez votre question
chrisotphe1371
8 oct. 2007 à 12:36
Bonjour,
if [ -f $FICHIER_ARCHIVE]
then
echo "le fichier ${FICHIER_ARCHIVE} existe "
rm $FICHIER_ARCHIVE
echo "le fichier ${FICHIER_ARCHIVE} a ete supprime "
else
echo "le fichier ${FICHIER_ARCHIVE} n'existe pas"

fi
lorsque je lance le script j'ai une erreur : "test: ] missing" qqun sait ou il manque le ] ?
0
chrisotphe1371
8 oct. 2007 à 12:37
voila la sortie de mon ls -l
-rwxrwxrwx 1 chu p3g 11 Oct 4 16:22 file1.txt
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
8 oct. 2007 à 13:17
Si tu pouvais essayer de ne poser qu'une question à la fois et surtout de répondre chronologiquement à tes propres posts ce serait déjà une bonne chose ;-(

Pour étayer mes dires :

1ère question : je recupere bien les droits mais je n'arrive pas a recuperer ni le user ni le group, ces variables sont vides. comment faire?

Réponses de "lami20j" et de moi même avec une demande pour complément : Affiche la sortie de ton "ls -l" s'il te plaît, merci.

Réponse de chrisotphe1371 : pour tester si un fichier a les droits en lecture on peut faire if [ -r nom_du_fichier ] then ...
J'ai tester cette commande sur un fichier auquel j'ai retirer les droits en lecture mais il rentre quand meme dans la boucle...


Nouvelle demande de ma part : "Affiche la sortie de ton "ls -l" ainsi que ta boucle (ou ton script), merci ! "

Et dans la réponse le script en question teste l'existence d'un fichier !!! Rien à voir avec les 2 précédentes demandes !?

Donc merci de ne pas trop te disperser, ok ?

Quant à ton soucis de crochet, c'est un problème de syntaxe, il manque juste un espace avant le crochet fermant.

;-))
0