Le fichier BAT pour ouvrir CMD dans le répertoire courant
j'ai beaucoup de scripts avec lesquels j'interagis depuis la ligne de commande. Chaque fois que j'ai besoin de les utiliser, je dois ouvrir une fenêtre de ligne de commande et copier+coller et CD vers le chemin du répertoire dans lequel ils se trouvent. C'est fastidieux (ils sont dans un système de fichiers assez profond, donc taper le chemin complet est une douleur, copier+coller est mieux mais pas beaucoup). J'ai essayé de créer un .Le fichier BAT sur lequel je pourrais double-cliquer ouvrirait une nouvelle fenêtre de ligne de commande dans le dossier le .le fichier bat existe dans mais ça ne marche pas. Il ouvre une nouvelle fenêtre, mais le répertoire de travail n'est pas le répertoire .le fichier bat. Voici ce que j'ai obtenu après avoir beaucoup googlé (mes compétences cmd ne sont pas si bonnes):
cd %CD%
cmd.exe
je sais DE quand J'ai utilisé Linux que Konqueror avait une fonction de" fenêtre de ligne de commande ici", et c'est l'effet que j'essaie d'obtenir sur Windows.
16 réponses
Créer un fichier nommé open_dos_here.cmd
avec les lignes suivantes:
%~d1
cd "%~p1"
call cmd
placez ce fichier dans n'importe quel dossier.
Ensuite, allez dans votre dossier Envoyer Vers ( Gagner + E ; Alt + D ; shell:sendto
; Entrez ).
Créez un raccourci pour pointer vers cet open_dos_here.cmd
ensuite, dans n'importe quel dossier, sélectionnez n'importe quel dossier ou sous-dossier. Droit-cliquez et sélectionnez "Send To "puis sélectionnez open_dos_here.cmd
pour ouvrir le DOS dans ce dossier.
vous voulez probablement faire ceci:
cd /d %~dp0
cmd.exe
cela définira votre répertoire courant dans le répertoire que vous avez le fichier de lot dans
, Vous pouvez simplement entrer cmd
dans la barre d'adresse dans l'Explorateur et il démarre dans cette voie. De même pour PowerShell.
comme solution plus générale, vous pouvez consulter le Microsoft Power Toy pour XP qui ajoute l'option "Open Command Window Here" lorsque vous faites un clic droit sur: http://www.microsoft.com/windowsxp/downloads/powertoys/xppowertoys.mspx
dans Vista et Windows 7, vous aurez cette option si vous maintenez Maj enfoncé et clic droit (ceci est intégré).
je pense que si vous créez un script de traitement par lots qui s'appuie sur le fait que le répertoire courant est placé dans le dossier qui contient le fichier de traitement par lots, vous vous mettez en difficulté lorsque vous essayez d'exécuter le fichier de traitement par lots en utilisant un chemin entièrement qualifié comme vous le feriez à partir d'un planificateur.
il est préférable d'ajouter cette ligne à votre fichier de lot aussi:
REM Change Current Directory to the location of this batch file
CD /D %~dp0
sauf si vous qualifiez tous vos chemins.
une autre solution consiste à utiliser un fichier raccourci pour cmd.exe au lieu d'un fichier batch.
éditer le raccourci commencer dans propriété à %~dp0 .
vous réalisez la même chose, sauf qu'il a L'icône Cmd (et vous pouvez changer cela).
certaines personnes n'aiment pas cliquer sur les fichiers par lots sans savoir ce qu'il y a dedans, et certains lecteurs réseau d'entreprise avoir une interdiction .les fichiers bat...
vous pouvez ajouter une entrée de menu de contexte à travers le registre:
-
naviguez dans votre registre à
HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell
et créer une clé appelée "invite de commande" sans les guillemets. -
définissez la chaîne de caractères par défaut à n'importe quel texte que vous voulez voir apparaître dans le menu de clic droit.
-
créez une nouvelle clé dans votre invite de commande nouvellement créée appelée "command", et définissez la chaîne par défaut est
cmd.exe /k pushd %1
Vous devrez peut-être ajouter %SystemRoot%\system32\
avant le cmd.exe si l'exécutable ne peut pas être trouvé.
- Les changements doivent avoir lieu immédiatement. Faites un clic droit sur un dossier et votre nouvel élément de menu devrait apparaître.
Voir aussi http://www.petri.co.il/add_command_prompt_here_shortcut_to_windows_explorer.htm
la commande la plus simple pour faire ceci:
start
vous pouvez toujours exécuter ceci en ligne de commande pour ouvrir une nouvelle fenêtre de ligne de commande au même endroit. Ou vous pouvez le placer dans votre .le fichier bat.
la manière la plus simple dans l'explorateur est de déplacer + clic droit de la souris sur le dossier ou sur une place vide dans le dossier et cliquer sur Open command prompt here
.
CMD commencera alors dans ce dossier
je dois dire, Je ne suis pas sûr si cela fonctionne pour Windows Vista et en dessous, mais il fonctionne sûrement Pour Windows 7, 8, 8.1 et 10.
est peut-être une petite vieille quête, mais pour ceux comme moi googlant pour cela, vous pouvez tenir Maj et clic droit dans le dossier. De cette façon, le menu Contenu affichera la fenêtre de commande ouverte ici.
un peu tard pour le jeu, mais si je comprends vos besoins correctement, cela aidera les gens avec le même problème.
deux solutions avec le même premier pas: Naviguez l'emplacement que vous gardez vos scripts et de copier le chemin d'accès à ce répertoire.
Première Solution:
- Cliquez Sur "Démarrer
- clic droit " ordinateur "(ou "mon ordinateur)
- Cliquez " Propriétés"
- à gauche, cliquez sur "Paramètres Système avancés"
- Cliquez Sur "Variables D'Environnement "
- dans la case "Variables du système", faites défiler vers le bas et sélectionnez "chemin
- Cliquez Sur "Modifier"
- dans le champ" Valeur Variable", faites défiler jusqu'à la droite
- s'il n'y a pas encore de point-virgule (;), ajoutez-le.
- coller dans le filepath que vous avez copié plus tôt.
- se termine par un point-virgule.
- cliquez sur "OK"
- cliquez" OK "à nouveau
- cliquez" OK "une dernière fois
Vous pouvez maintenant utiliser l'un de vos scripts comme si vous étiez déjà ce dossier.
deuxième Solution: (peut facilement être jumelée avec la première pour une utilité supplémentaire)
sur votre bureau, créez un fichier par lot avec le contenu suivant.
@echo off
cmd /k cd "C:\your\file\path"
ceci ouvrira une fenêtre de commande comme ce que vous avez essayé de faire.
pour des tonnes d'informations sur les commandes windows, cliquez ici: http://ss64.com/nt /
ce code fonctionne pour moi
nommez-le cmd.bat
@echo off
title This is Only A Test
echo.
:Loop
set /p the="%cd%"
%the%
echo.
goto loop
créer un nouveau fichier startCmdLine.bat dans votre répertoire et mettre cette ligne dans elle
call cmd
C'est tout. Maintenant double clic sur le .le fichier bat. Il fonctionne pour moi.
vous pouvez remplacer l'appel par start, il fonctionnera aussi.
se référant à la réponse de @Chris,
nous pouvons aussi aller dans le répertoire parent du fichier batch et exécuter des commandes en utilisant
cd /d %~dp0..
<OTHER_BATCH_COMMANDS>
cmd.exe
Pour comprendre le fonctionnement de la commande cd /d %~dp0..
veuillez consulter le lien ci-dessous
Qu'est-ce que cela signifie par commande cd /d %~dp0 dans Windows
, vous pouvez essayer:
shift + clic droit
ensuite, cliquez sur l'invite de commande ouverte ici