Msdos cd et fichier courant
kalinka
-
kalinka -
kalinka -
Bonjour,
Je voulais poser une question concernant les fichiers de commandes msdos que l'on peut créer avec l'extension bat. Mon fichier .bat prend en argument un fichier et a pour fonction de créer un autre fichier (peu importe comment) dans le même dossier. Le hic, c'est que je ne sais pas utiliser la commande cd pour me placer dans le dossier qui contient le fichier.
idéalement, je pensais à un fichier bat de la forme :
cd %1
command %1
La ligne cd %1 a pour but de me placer directement dans le dossier du fichier %1.
La seconde ligne est mon action qui agit sur le fichier et crée un autre fichier.
En pratique la ligne cd %1 donne une erreur, et la seconde ligne crée mon nouveau fichier dans un dossier par défaut, à savoir C:\documents ant settings\kalinka\
Voilà, en résumé ma question est : comment récupérer l'adresse du dossier d'un argument de type fichier afin de l'utiliser dans un fichier .bat
kalinka
Je voulais poser une question concernant les fichiers de commandes msdos que l'on peut créer avec l'extension bat. Mon fichier .bat prend en argument un fichier et a pour fonction de créer un autre fichier (peu importe comment) dans le même dossier. Le hic, c'est que je ne sais pas utiliser la commande cd pour me placer dans le dossier qui contient le fichier.
idéalement, je pensais à un fichier bat de la forme :
cd %1
command %1
La ligne cd %1 a pour but de me placer directement dans le dossier du fichier %1.
La seconde ligne est mon action qui agit sur le fichier et crée un autre fichier.
En pratique la ligne cd %1 donne une erreur, et la seconde ligne crée mon nouveau fichier dans un dossier par défaut, à savoir C:\documents ant settings\kalinka\
Voilà, en résumé ma question est : comment récupérer l'adresse du dossier d'un argument de type fichier afin de l'utiliser dans un fichier .bat
kalinka
A voir également:
- Msdos cd et fichier courant
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
8 réponses
Si je comprends bien %1 représente le fichier. Mais là cd %1 qu'est-ce que ça veut dire ? cd attend une directory non un fichier.
cd.. te permet de naviguer dans l'arborescence du Fichier de la racine vers les fichiers enfants et vis versa.
Je sais bien tout cela, mais je parle d'un fichier bat, je ne parle pas de travailler sur une console. Dans un fichier bat, le %1 représente le premier argument. Et si je mets cd.., cela m'amène dans le dossier parent du dossier par défaut. J'insiste bien sur le fait que je crée un fichier bat et que je ne suis pas sur une console.
Ensuite, oui je sais bien que cd %1 ne marche pas lorsque %1 est un fichier. Mais l'idée est que j'aimerais me placer dans le dossier qui contient le fichier en le prenant comme argument.
Ensuite en pratique si je nomme bout.bat mon fichier bat final, lorsque je fais bout.bat file, je veux récupérer mon nouveau fichier à coté du fichier file. C'est pour cela que j'ai besoin de savoir comment dire dans un fichier bat que je me place dans le dossier parent du fichier pris comme 1° argument.
Ceux qui ne savent pas ce qu'est un fichier de commande msdos .bat auront je crois du mal à me comprendre.
Je vous remercie
Kalinka
Ensuite, oui je sais bien que cd %1 ne marche pas lorsque %1 est un fichier. Mais l'idée est que j'aimerais me placer dans le dossier qui contient le fichier en le prenant comme argument.
Ensuite en pratique si je nomme bout.bat mon fichier bat final, lorsque je fais bout.bat file, je veux récupérer mon nouveau fichier à coté du fichier file. C'est pour cela que j'ai besoin de savoir comment dire dans un fichier bat que je me place dans le dossier parent du fichier pris comme 1° argument.
Ceux qui ne savent pas ce qu'est un fichier de commande msdos .bat auront je crois du mal à me comprendre.
Je vous remercie
Kalinka
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
--Kalinka tu t'es perdu en chemin? c'est bon ou non... A+
A bien vouloir faire on fini parfois... par REUSSIR
A bien vouloir faire on fini parfois... par REUSSIR
tout simplement ,
écrire cd ton fichier source et (disque/chemin/ficher.ext) vers le fichier cible ..-idem)
il faut 3 minutes pour écrire ça et ça marche à tout coup !
écrire cd ton fichier source et (disque/chemin/ficher.ext) vers le fichier cible ..-idem)
il faut 3 minutes pour écrire ça et ça marche à tout coup !
Bonjour,
Désolé de vous embêter encore, mais cela ne marche pas.
Je m'explique, mon fichier bat, que j'appelle par ex kalinka.bat, contient exactement deux lignes
cd
command %1
Il n'est pas important de savoir ce qu'est exactement le programme command, en tout cas il prend l'argument %1 et crée un nouveau fichier. Le hic est que lorsque dans une ligne de commande je tape kalinka.bat file ou lorsque je fais un glisser déplacer du fichier file sur l'icône de kalinka.bat, il se passe la chose suivante, il se crée bien le fichier que j'attends, mais dans le dossier c:\document and settings\kalinka.
Il semblerait que le dossier c:\document and settings\kalinka est considéré comme le dossier par défaut dans lequel il faut travailler.
J'aimerais insérer quelques lignes à la place du " cd " pour que le dossier courant dans lequel on travaille, ie le dossier dans lequel va être créé mon nouveau fichier, soit le dossier parent du fichier %1.
Voilà, je ne sais pas si je suis clair. Je parle bien d'un fichier bat et non pas de travailler directement en ligne de commande.
Kalinka.
Désolé de vous embêter encore, mais cela ne marche pas.
Je m'explique, mon fichier bat, que j'appelle par ex kalinka.bat, contient exactement deux lignes
cd
command %1
Il n'est pas important de savoir ce qu'est exactement le programme command, en tout cas il prend l'argument %1 et crée un nouveau fichier. Le hic est que lorsque dans une ligne de commande je tape kalinka.bat file ou lorsque je fais un glisser déplacer du fichier file sur l'icône de kalinka.bat, il se passe la chose suivante, il se crée bien le fichier que j'attends, mais dans le dossier c:\document and settings\kalinka.
Il semblerait que le dossier c:\document and settings\kalinka est considéré comme le dossier par défaut dans lequel il faut travailler.
J'aimerais insérer quelques lignes à la place du " cd " pour que le dossier courant dans lequel on travaille, ie le dossier dans lequel va être créé mon nouveau fichier, soit le dossier parent du fichier %1.
Voilà, je ne sais pas si je suis clair. Je parle bien d'un fichier bat et non pas de travailler directement en ligne de commande.
Kalinka.
Pour être encore plus précis, le programme " command" que j'ai nommé dans le post précédent est un programme qui crée un nouveau fichier à partir du fichier %1 et il le place dans le dossier courant. C'est pour cela que j'ai envie que le dossier courant soit le dossier qui contient le fichier à transformer.
kalinka
kalinka