Archiv verlassen und diese Seite im Standarddesign anzeigen : st_mode von stat in rwx format bringen
hallo,
wenn ich stat auf einer/m Datei/Verzeichnis aufrufe kann ich mir ein int geben lassen,
in dem die dateizugriffsrechte codiert sind (a la 0777)
gibt es irgendeine kleine standardfunktion um das int in dieses klassische
-rwxrwxrwx format zu bringen?
gruß
tkortkamp
11-05-2003, 11:26
Hi!
Ich habe da mal was gemacht in C++:
#include <iostream>
#include <string>
#include <sys/stat.h>
std::string convert(mode_t mode)
{
std::string str;
if(mode & S_IFDIR)
str += 'd';
else
str += '-';
if(mode & S_IRUSR)
str += 'r';
else
str += '-';
if(mode & S_IWUSR)
str += 'w';
else
str += '-';
if(mode & S_IXUSR)
str += 'x';
else
str += '-';
if(mode & S_IRGRP)
str += 'r';
else
str += '-';
if(mode & S_IWGRP)
str += 'w';
else
str += '-';
if(mode & S_IXGRP)
str += 'x';
else
str += '-';
if(mode & S_IROTH)
str += 'r';
else
str += '-';
if(mode & S_IWOTH)
str += 'w';
else
str += '-';
if(mode & S_IXOTH)
str += 'x';
else
str += '-';
return str;
}
int main(int argc, char **argv)
{
struct stat buf;
stat("test", &buf);
std::cout << convert(buf.st_mode) << std::endl;
return 0;
}
Informationen zu den S_I****-Sachen stehen in der man-Page zu stat (man 2 stat)
Hoffe das hilft dir :D
c ya,
Tobias
Powered by vBulletin® Version 4.2.5 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.