003
14.12.2003, 13:24 Uhr
Pablo
Supertux (Operator)
|
Allerdings, sorry, habe ich nicht richtig gesucht. S_IWUSR scheint richtig zu sein. Vielleicht ist deine Makse falsch oder du darfst nur nicht auf dieses Verzeichnis schreiben.
Mach folgendes (Bsp nicht von mir):
C++: |
#include <stdio.h> #include <limits.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> int main() { mode_t rechte; int fd; char dateiname[125];
umask(0); // von shell gesetzte Mask überschreiben printf("Geben sie Dateiname und Maske ein: (bsp: datei1 755) "); while( scanf("%s %o", dateiname, &rechte) != EOF) { if ( (fd=creat(dateiname, rechte)) == -1 ) { fprintf(stderr, "kann %s nicht angelegt werden\n", dateiname); return -1; } else { printf("%s mit '%03o' angelegt\n", dateiname, rechte); close(fd); } } return 0; }
|
-- A! Elbereth Gilthoniel! silivren penna míriel o menel aglar elenath, Gilthoniel, A! Elbereth! Dieser Post wurde am 14.12.2003 um 17:54 Uhr von Pablo Yanez Trujillo editiert. |