Auführbares Script erzeugen
-
Ich habe mit ofstream ein Script erzeugt, welches auch vewendbar sein soll, nur leider ist es im frisch erzeugten Zustand nicht ausführbar. Ich könnte jetzt einfach per
system("chmod 755 <file>")die Datei ausführbar machen, aber würde auf das system-Kommando lieber verzichten. Gibt es eine Möglichkeit dies direkt im Code zu erledigen?
Thx
-
da geht man so vor:
man liest "man chmod"
es verweist einen ganz am ende bei "see also" auf chmod(2).
damit ist gemeint, daß man
"man 2 chmod" lesen soll.
ah, da ist es ja.
-
Ich glaube damit mein volkard diesen Eintrag.
chmod("<file>", S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH);oder, falls die Datei schon geöffnet wurde
int fd = open("<file>", ...); fchmod(fd, S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH);
-
Danke für den Tip. In meiner man steht leider so ein Hinweis nicht.
chmod ändert nie die Rechte symbolischer Verknüpfungen; der chmod Systemaufruf kann ihre Zugriffsrechte nicht ändern. Das ist kein Problem da die Rechte symbolischer Verknüpfungen nie
benutzt werden. Stattdessen ändert chmod die Zugriffsrechte der Datei, auf die gezeigt wird, bei jeder auf der Kommandozeile angegebenen symbolischen Verknüpfung. Die symbolischen
Verknüpfungen, die chmod während des rekursiven Abstiegs in Verzeichnisse entdeckt, werden allerdings ignoriert.OPTIONEN
Wechseln des Modus jeder DATEI nach MODUS.-c, --changes
Wie --verbose, aber nur melden, wenn eine Änderung durchgeführt wird.-f, --silent, --quiet
Unterdrücken der meisten Fehlermeldungen.-v, --verbose
Ausgabe einer Diagnose für jede verarbeitete Datei.--reference=RDATEI
Verwendung von RDATEIs Modus anstatt eines MODUS- Wertes.-R, --recursive
Rekursives Ändern der Dateien und Verzeichnisse.--help Anzeigen einer kurzen Hilfe und beenden.
--version
Ausgabe der Versionsinformationen und beenden.Jeder MODUS ist einer oder mehrere der Buchstaben »ugoa«, eines der Symbole »+-=« und einer oder mehrere der Buchstaben »rwxXstugo«.
AUTOR
Geschrieben von David MacKenzie.BUGS MELDEN
Berichten Sie Fehler an bug-fileutils@gnu.org.COPYRIGHT
Copyright
2001 Free Software Foundation, Inc.
Dies ist freie Software; die Kopierbedingungen stehen in den Quellen. Es gibt keine Garantie; auch nicht für VERKAUFBARKEIT oder FÜR SPEZIELLE ZWECKE.chmod (fileutils) 4.1 Mai 2001 CHMOD(1)
Manual page chmod(1) line 23/75 (END)