fopen(in $HOME)

telsh

telsh

-Weltenbürger-
Moin,
ich versuche mich gerade mal wieder in C und bastel mir da was zurecht.

Dabei habe ich mir folgenden code erdacht:

Code:
	string ftoopen = "/home/" + getpwuid() + "/.Shellstart.sh";
	ShellStart = fopen( ftoopen.c_str(), "r");

Wie würdet Ihr das schreiben?

thx,
telsh
 
Was meinst Du mit Deiner Frage? Klappt etwas mit Deinem Code nicht? Ich sehe nicht, warum er nicht funktionieren sollte (wobei ich getpwuid() nicht kenne, aber ich nehme an, das hast Du schon nachgeguckt/ weisst es selber).
 
Eigentlich wollte ich eine Datei / ein Shell-Skript im Home-Verzeichnis des Users ausführen (lassen). getpwuid() soll den Namen des aktuellen Users einfügen. Herkunft IIRC stdlib...(???)

Da Du auch der Meinung bist, das das laufen sollte, seh ich mir lieber nochmal diese Variablendeklarationen an. *g* Ich hab da echt Nachholbedarf...

thx,
telsh
 
Naja, wenn du es so machst, ist es eher ungünstig, das Home-Verzeichniss muss schliesslich nicht zwangsweise unterhalb von /home/ liegen, bei mehreren Systemen ist das standardmässig nicht so.
Da du $HOME schon im Thread-Titel angesprochen hast, verwende das doch. Der Inhalt von Umgebungsvariablen lässt sich mit der Funktion getenv abfragen.
Und was ich noch etwas komisch finde, du redest von C, aber verwendest die string-Klasse. In C gibt es aber nur null-terminierte char-Arrays.
 

Ähnliche Themen

Switche abfragen über Script

Script pausieren bis Bedingung erfüllt ist

"non blocking console input" wieder rückgängig machen?

iptables verständniss frage, xrdp nicht erreichbar.

dd schneller platte befüllen

Zurück
Oben