[C ++] Changement répertoire console Linux
Résolu
Tibo
-
Tibo -
Tibo -
Bonjour,
Voilà je suis sous la Mandrake 9.2 et je programme en C++, mon problème est simple à comprendre :
Dans mon programme, je dois faire un changement de répertoire dans la console. J'ai essayé le : system("cd toto"); mais ca ne marche pas, le répertoire de la console reste inchangé.
Si quelqu'un a la solution ou même une idée ca me sortirait d'une bonne galère.
Merci d'avance à tous.
Voilà je suis sous la Mandrake 9.2 et je programme en C++, mon problème est simple à comprendre :
Dans mon programme, je dois faire un changement de répertoire dans la console. J'ai essayé le : system("cd toto"); mais ca ne marche pas, le répertoire de la console reste inchangé.
Si quelqu'un a la solution ou même une idée ca me sortirait d'une bonne galère.
Merci d'avance à tous.
A voir également:
- [C ++] Changement répertoire console Linux
- Changement dns - Guide
- Test console steam deck - Guide
- Linux reader - Télécharger - Stockage
- Changement d'heure - Guide
- Changement d'écriture facebook - Guide
4 réponses
Il y a eu une question dans ce genre là il y a quelques jours pour le même problème, mais sur un script shell. Je retrouve plus l'url...
En fait quand tu lances ton programme, le cd se fait, mais quand le programme se termine tu reviens à l'environnement dans lequel tu avais lancé ton programme... Et changer un environnement qui n'est pas celui du programme c'est tout de suite plus chaud.
La question est donc : est-il bien nécessaire de faire ce changement de répertoire ? N'as tu pas moyen de définir une variable te permettant de travailler sur des paths absolus et non relatifs ? Il faudrait que tu donnes plus de précisions sur ce que tu veux faire...
En fait quand tu lances ton programme, le cd se fait, mais quand le programme se termine tu reviens à l'environnement dans lequel tu avais lancé ton programme... Et changer un environnement qui n'est pas celui du programme c'est tout de suite plus chaud.
La question est donc : est-il bien nécessaire de faire ce changement de répertoire ? N'as tu pas moyen de définir une variable te permettant de travailler sur des paths absolus et non relatifs ? Il faudrait que tu donnes plus de précisions sur ce que tu veux faire...
Mon programme en C++ est en fait un automatiseur d'installation des serveurs apache, mysql et php. Il configurera tout et copiera les fichiers d'un site intranet.
Pour les installations et configurations j'ai trouvé pas mal de tutorial que je vais suivre, mais bon il y a pas mal de cd, exemple :
$ cd apache
$ ./configure
et si mon programme lance un : ./apache/configure ben ca retourne pas mal d'erreur, donc en cherchant bien je pense que je pourrai réussir à faire le ./apache/configure mais bon j'ai peur que ca me fasse ca à chaque fois...
Donc si je pouvais savoir comment changer de répertoire je pense que ca serait plus rapide.
Extrait du programme :
system("cd apache");
system("./configure");
Et donc même si le programme ne se finit pas, ca ne marche pas, ca me dit qu'il ne connait pas la commande configure et effectivement un pwd permet de s'assurer que le répertoire n'a pas changé.
$ source script
Donc bon je vais essayé de me débrouillé comme ca...