Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec
le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas
la manip. Pour une petite aide, Merci.
--
Thierry de Champagne... pour me repondre remplacer 9 par 9online
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Stephane Chazelas
2004-11-08, 16:17(+01), thierry.rouillon:
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user" printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca ne marchera pas sur d'autres Unix.(il y aura des problemes aussi si le user ou le group contient un apostrophe, auquel cas tu peux faire: user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE") )
Pour etre portable, utiliser ls ou mieux ecrire un script perl au lieu d'un script shell.
set -f IFS=" " set x $(LC_ALL=C ls -ld -- "$FILE") user=$4 group=$5
(ca pourra ne pas marcher dans certains vieux Unix ou dans certains corner cases (quand des champs se touchent ou que user ou group contient des espaces))
Enfin, zsh a un module stat integré.
zmodload zsh/stat stat -s -H info -- $FILE print -r "l'utilisateur est $info[uid], le groupe est $info[gid]"
-- Stephane
2004-11-08, 16:17(+01), thierry.rouillon:
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec
le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas
la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user"
printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca
ne marchera pas sur d'autres Unix.(il y aura des problemes aussi
si le user ou le group contient un apostrophe, auquel cas tu
peux faire:
user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE")
)
Pour etre portable, utiliser ls ou mieux ecrire un script perl
au lieu d'un script shell.
set -f
IFS=" "
set x $(LC_ALL=C ls -ld -- "$FILE")
user=$4 group=$5
(ca pourra ne pas marcher dans certains vieux Unix ou dans
certains corner cases (quand des champs se touchent ou que user
ou group contient des espaces))
Enfin, zsh a un module stat integré.
zmodload zsh/stat
stat -s -H info -- $FILE
print -r "l'utilisateur est $info[uid], le groupe est $info[gid]"
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user" printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca ne marchera pas sur d'autres Unix.(il y aura des problemes aussi si le user ou le group contient un apostrophe, auquel cas tu peux faire: user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE") )
Pour etre portable, utiliser ls ou mieux ecrire un script perl au lieu d'un script shell.
set -f IFS=" " set x $(LC_ALL=C ls -ld -- "$FILE") user=$4 group=$5
(ca pourra ne pas marcher dans certains vieux Unix ou dans certains corner cases (quand des champs se touchent ou que user ou group contient des espaces))
Enfin, zsh a un module stat integré.
zmodload zsh/stat stat -s -H info -- $FILE print -r "l'utilisateur est $info[uid], le groupe est $info[gid]"
-- Stephane
TiChou
Dans le message <news:cmo2ml$543$, *thierry.rouillon* tapota sur f.c.o.l.configuration :
Bonsoir.
Bonjour,
Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip.
On peut utiliser la commande 'stat' disponible maintenant avec les coreutils :
$ stat -c "%U" foo
retournera le nom du propriétaire du fichier 'foo'.
$ stat -c "%G" foo
retournera le nom du groupe du fichier 'foo'.
man stat
On peut aussi éventuellement utiliser la commande GNU find, même si ce n'est pas son usage initial :
$ find foo -maxdepth 0 -printf "%un"
et
$ find foo -maxdepth 0 -printf "%gn"
man find
Pour une petite aide, Merci.
De rien. Notez que c'est une question qui a plus sa place sur le groupe fr.comp.os.unix.
-- TiChou
Dans le message <news:cmo2ml$543$1@aphrodite.grec.isp.9tel.net>,
*thierry.rouillon* tapota sur f.c.o.l.configuration :
Bonsoir.
Bonjour,
Je suis coincé sur un script. Il me faut remplir une variable
avec le nom utilisateur et le groupe d'un autre fichier, mais je ne
connais pas la manip.
On peut utiliser la commande 'stat' disponible maintenant avec les coreutils
:
$ stat -c "%U" foo
retournera le nom du propriétaire du fichier 'foo'.
$ stat -c "%G" foo
retournera le nom du groupe du fichier 'foo'.
man stat
On peut aussi éventuellement utiliser la commande GNU find, même si ce n'est
pas son usage initial :
$ find foo -maxdepth 0 -printf "%un"
et
$ find foo -maxdepth 0 -printf "%gn"
man find
Pour une petite aide, Merci.
De rien. Notez que c'est une question qui a plus sa place sur le groupe
fr.comp.os.unix.
Dans le message <news:cmo2ml$543$, *thierry.rouillon* tapota sur f.c.o.l.configuration :
Bonsoir.
Bonjour,
Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip.
On peut utiliser la commande 'stat' disponible maintenant avec les coreutils :
$ stat -c "%U" foo
retournera le nom du propriétaire du fichier 'foo'.
$ stat -c "%G" foo
retournera le nom du groupe du fichier 'foo'.
man stat
On peut aussi éventuellement utiliser la commande GNU find, même si ce n'est pas son usage initial :
$ find foo -maxdepth 0 -printf "%un"
et
$ find foo -maxdepth 0 -printf "%gn"
man find
Pour une petite aide, Merci.
De rien. Notez que c'est une question qui a plus sa place sur le groupe fr.comp.os.unix.
-- TiChou
thierry.rouillon
Stephane Chazelas nous a gentiment écrit:
2004-11-08, 16:17(+01), thierry.rouillon:
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user" printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca ne marchera pas sur d'autres Unix.(il y aura des problemes aussi si le user ou le group contient un apostrophe, auquel cas tu peux faire: user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE") )
Pour etre portable, utiliser ls ou mieux ecrire un script perl au lieu d'un script shell.
set -f IFS=" " set x $(LC_ALL=C ls -ld -- "$FILE") user=$4 group=$5
(ca pourra ne pas marcher dans certains vieux Unix ou dans certains corner cases (quand des champs se touchent ou que user ou group contient des espaces))
Enfin, zsh a un module stat integré.
zmodload zsh/stat stat -s -H info -- $FILE print -r "l'utilisateur est $info[uid], le groupe est $info[gid]"
Ca fonctionne super. Merci
-- Thierry de Champagne... pour me repondre remplacer 9 par 9online
Stephane Chazelas nous a gentiment écrit:
2004-11-08, 16:17(+01), thierry.rouillon:
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable
avec le nom utilisateur et le groupe d'un autre fichier, mais je ne
connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user"
printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca
ne marchera pas sur d'autres Unix.(il y aura des problemes aussi
si le user ou le group contient un apostrophe, auquel cas tu
peux faire:
user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE")
)
Pour etre portable, utiliser ls ou mieux ecrire un script perl
au lieu d'un script shell.
set -f
IFS=" "
set x $(LC_ALL=C ls -ld -- "$FILE")
user=$4 group=$5
(ca pourra ne pas marcher dans certains vieux Unix ou dans
certains corner cases (quand des champs se touchent ou que user
ou group contient des espaces))
Enfin, zsh a un module stat integré.
zmodload zsh/stat
stat -s -H info -- $FILE
print -r "l'utilisateur est $info[uid], le groupe est $info[gid]"
Ca fonctionne super. Merci
--
Thierry de Champagne... pour me repondre remplacer 9 par 9online
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user" printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca ne marchera pas sur d'autres Unix.(il y aura des problemes aussi si le user ou le group contient un apostrophe, auquel cas tu peux faire: user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE") )
Pour etre portable, utiliser ls ou mieux ecrire un script perl au lieu d'un script shell.
set -f IFS=" " set x $(LC_ALL=C ls -ld -- "$FILE") user=$4 group=$5
(ca pourra ne pas marcher dans certains vieux Unix ou dans certains corner cases (quand des champs se touchent ou que user ou group contient des espaces))
Enfin, zsh a un module stat integré.
zmodload zsh/stat stat -s -H info -- $FILE print -r "l'utilisateur est $info[uid], le groupe est $info[gid]"
Ca fonctionne super. Merci
-- Thierry de Champagne... pour me repondre remplacer 9 par 9online
thierry.rouillon
Stephane Chazelas nous a gentiment écrit:
2004-11-08, 16:17(+01), thierry.rouillon:
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user" printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca ne marchera pas sur d'autres Unix.(il y aura des problemes aussi si le user ou le group contient un apostrophe, auquel cas tu peux faire: user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE") )
J'ai du faire à mon avis une faute de syntaxe en appliquant la variable à
chown mais je voulais retirer les (') chown -R %sn "$user": %sn "$groupe" /mnt/home_mag/asselec/data_magasin chown: `%sn': usager invalide
Qu'en penses tu ? -- Thierry de Champagne... pour me repondre remplacer 9 par 9online
Stephane Chazelas nous a gentiment écrit:
2004-11-08, 16:17(+01), thierry.rouillon:
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable
avec le nom utilisateur et le groupe d'un autre fichier, mais je ne
connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user"
printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca
ne marchera pas sur d'autres Unix.(il y aura des problemes aussi
si le user ou le group contient un apostrophe, auquel cas tu
peux faire:
user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE")
)
J'ai du faire à mon avis une faute de syntaxe en appliquant la variable à
chown mais je voulais retirer les (')
chown -R %sn "$user": %sn "$groupe" /mnt/home_mag/asselec/data_magasin
chown: `%sn': usager invalide
Qu'en penses tu ?
--
Thierry de Champagne... pour me repondre remplacer 9 par 9online
Bonsoir. Je suis coincé sur un script. Il me faut remplir une variable avec le nom utilisateur et le groupe d'un autre fichier, mais je ne connais pas la manip. Pour une petite aide, Merci.
printf "L'utilisateur est '%s'n" "$user" printf "Le groupe est '%s'n" "$group"
Note que la commande "stat" est GNU specific. Autrement dit, ca ne marchera pas sur d'autres Unix.(il y aura des problemes aussi si le user ou le group contient un apostrophe, auquel cas tu peux faire: user=$(stat -c %U -- "$FILE") group=$(stat -c %G -- "$FILE") )
J'ai du faire à mon avis une faute de syntaxe en appliquant la variable à
chown mais je voulais retirer les (') chown -R %sn "$user": %sn "$groupe" /mnt/home_mag/asselec/data_magasin chown: `%sn': usager invalide
Qu'en penses tu ? -- Thierry de Champagne... pour me repondre remplacer 9 par 9online
TiChou
Dans le message <news:cmokoh$gd7$, *thierry.rouillon* tapota sur f.c.o.l.configuration :