(Courriels de diversion: <reelirions@ressassait-ânonnent.com> <necessaire@humecterait-flouerais.com> <illusionnes@inversaient-contribuons.com> <entravait@racheterent-crasse.com> <vissais@confrontez-croquiez.com> <deferente@denicheras-petarader.com> <predilections@mi-voix-thesauriserais.com> <absente@photographierai-configuree.com> <poing@poses-ejecte.com> <cubant@oeils-de-boeuf-rebâti.com> )
Le 3 Jan, Arnaud Rolly écrit : > Je programme un peu sous Linux, mais la, même avec le man, je suis coinçé : > Je veut obtenir les permissions d'un fichier. J'utilise la commande stat. > Mais ensuite, je suis bloqué. Il faut utilser le champ st_mode. Mais comment ? > <=> Comment utiliser S_IRUSR, S_IWUSR... ? struct stat st; if (stat("monfichier", &st) < 0) { perror("stat(monfichier)"); exit(EXIT_FAILURE); } if (S_ISREG(st.st_mode)) { /* fichier normal */ } if (S_ISDIR(st.st_mode)) { /* répertoire */ } if (st.st_mode & S_IRUSR) { /* lisible par le propriétaire */ } if ((st.st_mode & (S_IROTH | S_IWOTH)) == (S_IROTH | S_IWOTH))) { /* lisible et inscriptible pour les autres */ } /* les doits d'accès sous forme octale */ printf("%o\n", st_st_mode & 0777); Bon, tu vois le principe : il suffit de faire des manipulations sur les bits de st_mode. -- Marc Thirion | Toulouse, France Un Travail pour Chacun : http://www.multimania.com/untravailchacun/ Marc.Thirion@ISOscope.com : http://www.ISOscope.com/Pérennité des logiciels et des systèmes --------------------------------------------------------------------- Aide sur la liste: <URL:mailto:linux-31-help@savage.iut-blagnac.fr>Le CULTe sur le web: <URL:http://savage.iut-blagnac.fr/>