Commandes / .bat / .cmd / sur clé USB
Te-Tienne
Messages postés
30
Date d'inscription
Statut
Membre
Dernière intervention
-
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
Bon... Le titre n'est pas hyper parlant, alors je m'explique...:
Salut à tous!
Je suis en train de créer une clé USB remplie d'applications portables. Je créé aussi une interface permettant de les organiser sur le bureau (je raccourcie cette partie-là, elle n'est pas importante pour mon problème).
Pour ça, j'ai besoin que ma clé ait une lettre précise sur tous les ordis, j'ai le scripte .cmd qui la change une fois lancée, pas de soucis, il marche.
Maintenant le problème:
Je veux créer un .bat qui:
1: Lance mon fichier "set_letter=X.cmd"
2: Attend 10 secondes
3: Lance l'executable que j'aurai paramétré pour avoir mes applications sur le bureau (en l'occurence, "rainmeter").
Le soucis, c'est qu'en mettant dans le même fichier .bat ces trois demandes à la suite, ma lettre change, pas de soucis, mais après, il ne se passe plus rien.
Je suppose que ça vient du fait que, vu que le chemin change (celui de la clé), cela interrompt la lecture du .bat ...
Donc j'ai pensé quelque chose, mais je ne me connais pas assez en programmation de dos, et je n'y arrive pas. J'essaie de résumer clairement mon idée:
############################################################
setup.cmd:
1: créer "launcher.bat" sur "%current user%\Desktop\launcher.bat"
2: Ecrire dans "%current user%\Desktop\launcher.bat":
.............."attendre 10 secondes
...............lancer X:\rainmeter.exe
...............supprimer "%current user%\Desktop\launcher.bat" (s'autodétruire, en gros)
3: Lancer "%current user%\Desktop\launcher.bat"
4: Effectuer "set_letter=X"(pendant que la partie "attendre 10 secondes" de l'autre programme s'exécute:)
############################################################
Je pense être plutôt clair, un premier launcher qui en créé un autre sur le bureau, ce deuxième attendra que le premier ait fini sa tâche avant de faire son boulot et enfin de s' "autodétruire".
Bon, je me prends un peu la tête, je pourrais aussi avoir d'un côté la commande pour changer la lettre (vu que j'ai besoin d'un chemin fixe pour que mes applications se lancent dans rainmeter), et ensuite lancer l'application rainmeter à la main... Mais c'est aussi un petit défi pour moi, même si je patauge...
Bref, en tout cas, merci d'avance à ceux qui prendront le temps de lire tout mon roman, et celui de me répondre!
Bonne journée!
Salut à tous!
Je suis en train de créer une clé USB remplie d'applications portables. Je créé aussi une interface permettant de les organiser sur le bureau (je raccourcie cette partie-là, elle n'est pas importante pour mon problème).
Pour ça, j'ai besoin que ma clé ait une lettre précise sur tous les ordis, j'ai le scripte .cmd qui la change une fois lancée, pas de soucis, il marche.
Maintenant le problème:
Je veux créer un .bat qui:
1: Lance mon fichier "set_letter=X.cmd"
2: Attend 10 secondes
3: Lance l'executable que j'aurai paramétré pour avoir mes applications sur le bureau (en l'occurence, "rainmeter").
Le soucis, c'est qu'en mettant dans le même fichier .bat ces trois demandes à la suite, ma lettre change, pas de soucis, mais après, il ne se passe plus rien.
Je suppose que ça vient du fait que, vu que le chemin change (celui de la clé), cela interrompt la lecture du .bat ...
Donc j'ai pensé quelque chose, mais je ne me connais pas assez en programmation de dos, et je n'y arrive pas. J'essaie de résumer clairement mon idée:
############################################################
setup.cmd:
1: créer "launcher.bat" sur "%current user%\Desktop\launcher.bat"
2: Ecrire dans "%current user%\Desktop\launcher.bat":
.............."attendre 10 secondes
...............lancer X:\rainmeter.exe
...............supprimer "%current user%\Desktop\launcher.bat" (s'autodétruire, en gros)
3: Lancer "%current user%\Desktop\launcher.bat"
4: Effectuer "set_letter=X"(pendant que la partie "attendre 10 secondes" de l'autre programme s'exécute:)
############################################################
Je pense être plutôt clair, un premier launcher qui en créé un autre sur le bureau, ce deuxième attendra que le premier ait fini sa tâche avant de faire son boulot et enfin de s' "autodétruire".
Bon, je me prends un peu la tête, je pourrais aussi avoir d'un côté la commande pour changer la lettre (vu que j'ai besoin d'un chemin fixe pour que mes applications se lancent dans rainmeter), et ensuite lancer l'application rainmeter à la main... Mais c'est aussi un petit défi pour moi, même si je patauge...
Bref, en tout cas, merci d'avance à ceux qui prendront le temps de lire tout mon roman, et celui de me répondre!
Bonne journée!
A voir également:
- Commandes / .bat / .cmd / sur clé USB
- Clé usb non détectée - Guide
- Formater clé usb - Guide
- Clé usb - Accueil - Stockage
- Clé windows 8 - Guide
- Fichier bat - Guide
6 réponses
Bonjour,
Du coup ce qu'il te manque, c'est d'écrire dans un fichier ?
Essaie ça :
Xavier
Du coup ce qu'il te manque, c'est d'écrire dans un fichier ?
Essaie ça :
echo attendre 10 secondes > "%current user%\Desktop\launcher.bat"
echo lancer X:\rainmeter.exe >> "%current user%\Desktop\launcher.bat"
echo supprimer "%current user%\Desktop\launcher.bat" >> "%current user%\Desktop\launcher.bat"
Xavier
Bonjour,
Plutôt que de changer la lettre de la clé usb, ne serait-il pas plus pratique de la deviner ?
Plutôt que de changer la lettre de la clé usb, ne serait-il pas plus pratique de la deviner ?
Et ça remplace juste la lettre ?
Il me semblait que cette commande faisait partir du dossier ou se trouve la commande...?
Enfin si c'est la lettre c'est super ! ^^
(bien que j'essaierai quand même l'autre solution aussi, mais ça c'est pour ma curiosité mdr ^^)
Je vais essayer ça taleur en tout cas !
Il me semblait que cette commande faisait partir du dossier ou se trouve la commande...?
Enfin si c'est la lettre c'est super ! ^^
(bien que j'essaierai quand même l'autre solution aussi, mais ça c'est pour ma curiosité mdr ^^)
Je vais essayer ça taleur en tout cas !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
idéalement, j'aimerais aussi savoir si il existe un script que je peux mettre dans le fameux fichier pour lui demander de s'auto-supprimer une fois qu'il aura fait sa tâche...
En gros ce qu'il me manque c'est:
créer un fichier à cet emplacement
Le nommer commande.cmd
Écrir "tels scripts" dedans et le sauvegarder.
Apres je saurais le lancer sans soucis, mais cette partie est au delà de mes compétences...
En tout cas, merci de ta réponse !
créer un fichier à cet emplacement
Le nommer commande.cmd
Écrir "tels scripts" dedans et le sauvegarder.
»
C'est exactement ce que fait le code que je t'ai donné :)
alors si je regarde bien ton script la commande pour attendre... Celle pour lancer et celle pour supprimer... ^^
Je suis curieux, une commende pour supprimer un fichier marche-t-elle sur le fichier qui la lance ?
Et, j'ai peut être mal regardé, mais je ne vois pas la commande demandant l'édition de luncher.bat? "écrit xxxxxxxxxx dans luncher.bat et sauvegarder"?
E' tout cas merci beaucoup, je vais mettre en application demain, j'aurai du temps à y consacrer, voire comment et si ça marche ^^ je te dirais, mais si tu veux bien me dire pour le script d'édition ^^
Bonne soirée !
(ce qui écrase le fichier)
(ce qui ajoute à la fin du fichier)
Je n'ai pas mis les autres commandes exactes parce qu'il me semblait que tu les avais et que je n'ai pas vraiment eu le temps de les tester ^^
Pour ce qui est de la suppression sur le fichier en cours d'exécution... J'imagine que ça peut marcher puisque le fichier est chargé en mémoire, mais je te laisse tester et nous répondre ;)