Der Untergeher
25-09-2006, 23:52
Hallo zusammen,
ich versuche mit einem C++ Proramm Dateien zu kopieren. Und zwar genau so wie 'cp -dp Datei1 Datei2' es machen würde. Einfach per
system("cp -dp Datei1 Datei2"); die Kopie zu erstellen bietet sich nicht an, da ich über die Dateinamen keine Kontrolle habe und sie vom Command Interpreter (hier: bash) interpretiert werden würden. Ich hab also zwei Möglichkeiten:
1. Die Dateinnamen so escapen, dass die shell nichts anrichten kann und einen Befehl (statt 'cp') verwenden, der damit umgehen kann. Kennt da jemand eine Möglichkeit?
2. Eine Bibliothek verwenden, die eine Funktion anbietet die sich wie 'cp -dp' benimmt. Ich war schon versucht einfach nen wrapper um die 'main' von cp aus den coreutils zu schreiben ... Aber das Problem muss doch schonmal jemand gehabt (und gelöst) haben. Kennt da jemand ne Lösung?
Lieben Gruß & vielen Dank
Daniel
ich versuche mit einem C++ Proramm Dateien zu kopieren. Und zwar genau so wie 'cp -dp Datei1 Datei2' es machen würde. Einfach per
system("cp -dp Datei1 Datei2"); die Kopie zu erstellen bietet sich nicht an, da ich über die Dateinamen keine Kontrolle habe und sie vom Command Interpreter (hier: bash) interpretiert werden würden. Ich hab also zwei Möglichkeiten:
1. Die Dateinnamen so escapen, dass die shell nichts anrichten kann und einen Befehl (statt 'cp') verwenden, der damit umgehen kann. Kennt da jemand eine Möglichkeit?
2. Eine Bibliothek verwenden, die eine Funktion anbietet die sich wie 'cp -dp' benimmt. Ich war schon versucht einfach nen wrapper um die 'main' von cp aus den coreutils zu schreiben ... Aber das Problem muss doch schonmal jemand gehabt (und gelöst) haben. Kennt da jemand ne Lösung?
Lieben Gruß & vielen Dank
Daniel