Windows Script Batch en cours de route nom
J'ai un fichier de commandes qui est sur une clé usb. J'ai besoin de savoir le nom du disque, le lot est en.
Exemple, si c'est E:\mybatch.bat il doit trouver E:\ même chose pour F:\ G:\ etc.. quand il est ouvert.
Comment pourrais-je le faire dans le script de commandes. (Windows)
- Voulez-vous que le lecteur où le lot est situé ou le lecteur du répertoire de travail actuel? Ces deux sont distincts.
Vous devez vous connecter pour publier un commentaire.
%CD%
est ce que vous cherchez. Il imprime le répertoire de travail actuel du fichier de commandes ou de la commande en cours d'exécution. Si votre fichier de commandes est à la racine du lecteur, il vous suffit d'imprimer la lettre de lecteur, sinon vous aurez à analyser les 2 premiers caractères.Exemple:
imprime
sur un lecteur flash monté sur E:.
Mise à jour: Comme Andriy dit dans les commentaires, si vous recherchez seulement pour les trois premiers caractères du chemin d'accès, puis de les utiliser au lieu de %CD%:
Ce résultat
E:\
, par exemple, n'importe où sur le disque.code
@echo off echo %CD% pausecode
imprimé C:\ C:%CD:~0,2%
évalue à l' [en cours] lettre de lecteur et les ':'. En conséquence,%CD:~0,3%
comprend en outre des '\'.%__CD__%
, vous obtenez toujours la barre oblique à la finM$ de la documentation "À l'aide de paramètres lot" dit:
Si la course de l'intérieur .CMD/.Le fichier BAT, vous pouvez utiliser
%~dp0
pour obtenir le courant/répertoire de travail. Celui-ci est un peu plus sûr qu'il est conscient de chemins UNC et des ces. De référence pour la syntaxe de cette variable est disponible ici.Vous pouvez trouver toutes les clés USB des lettres de lecteur à partir de n'importe quel lecteur avec cette.
Cela vous donnera le lecteur en cours dans le format
C:
, c'est à dire les 2 premiers caractères à partir du répertoire de travail courantMéfiez-vous
Les questions /réponses à cette question ne reconnaissent pas que la question est en fait de demander à propos de deux choses différentes:
Ils peuvent être différents lorsque le fichier de commandes est démarré à partir d'un répertoire de travail autre que son résidant emplacement. Les lecteurs doivent donc être clair sur la différence avant de déterminer la solution qui s'applique à leur cas.
En voiture de la répertoire de travail courant
Cela prend la pleine répertoire de travail actuel et l'habille vers le bas pour les deux premiers caractères, qui sera une lettre de lecteur et un deux-points, par exemple
C:
.En voiture de la fichier de commandes lui-même
Ce mic le chemin d'accès complet du fichier de commandes (en
%0
) à une lettre de lecteur et un deux-points, par exempleC:
.(c'est une version étendue de mon rejeté modifier à Kai K la réponse de)
%~dp0
sans le dernier signe de pourcentage%
signe. De gauche comme%~d0
plutôt que%~dp0
si, parce que dans ce cas, nous ne voulons pas le chemin.Merci Beaucoup @Sparky3489, si j'ai juste un Lecteur Flash USB, j'ai mis cela au sein de votre Algorithme, juste Après la
J'ai aussi modifié le Libellé de l'Identificateur de
Puis, Après, {et à l'Extérieur de} l'Algorithme, je peux ajouter le Lecteur Flash Chemin comme...
Puis par la mise en place d'autres Chemins
Comme
Je peux faire un Fichier Batch de Sauvegarde Pour le Lecteur de mémoire Flash usb (peut être Appelé Via le Windows Coupé Court avec une Icône dans votre barre de Lancement Rapide Fenêtre ~ Recherche "Lancement Rapide", en cas de Doute de quoi je Parle).