J'ai beaucoup de scripts avec lesquels j'interagis depuis la ligne de commande. À chaque fois que je dois les utiliser, je dois ouvrir une fenêtre de ligne de commande et copier/coller le CD dans le chemin du répertoire dans lequel ils se trouvent. C'est fastidieux (ils sont dans un système de fichiers assez profond, alors entrez le chemin est une douleur, copier + coller est mieux mais pas beaucoup). J'ai essayé de créer un fichier .BAT sur lequel je pouvais double-cliquer pour ouvrir une nouvelle fenêtre de ligne de commande dans le dossier dans lequel se trouve le fichier .bat mais cela ne fonctionne pas. Il ouvre une nouvelle fenêtre, mais le répertoire de travail n’est pas le répertoire dans lequel se trouve le fichier .bat. Voici ce que j’ai obtenu après beaucoup de recherches sur Google (mes compétences en cmd ne sont pas si bonnes):
cd %CD%
cmd.exe
Depuis que j’utilisais Linux, je sais que Konqueror possédait une fonctionnalité "Fenêtre de ligne de commande ici", et c’est ce que j’essaie d’obtenir sur Windows.
Crea un file chiamato open_dos_here.cmd
con le seguenti linee:
%~d1
cd "%~p1"
call cmd
Metti questo file in qualsiasi cartella. Quindi, vai alla cartella Invia a (Win+E;Alt+D; Shell:sendto
;Enter). Créer une archive à la main pour une question open_dos_here.cmd
Quindi, dans qualsiasi cartella, selezionare qualsiasi file o sottocartella. Cliquez sur ce que vous voulez pour choisir votre choix "Invitez-vous" et choisissez votre choix _open_dos_here.cmd
par april il DOS in quella cartella.
vous voulez probablement faire ceci:
cd /d %~dp0
cmd.exe
cela définira votre répertoire actuel sur le répertoire dans lequel vous avez le fichier de commandes
Vous pouvez simplement entrer cmd
dans la barre d’adresse de l’explorateur et cela démarre dans ce chemin. De même pour PowerShell.
Il y a moyen plus simple
start /d "folder path"
En tant que solution plus générale, vous pouvez consulter le logiciel Microsoft Power Toy pour XP qui ajoute l’option "Ouvrir la fenêtre de commande ici" lorsque vous cliquez avec le bouton droit de la souris: http://www.Microsoft.com/windowsxp /downloads/powertoys/xppowertoys.mspx
Sous Vista et Windows 7, vous aurez cette option si vous maintenez la touche Maj enfoncée et cliquez avec le bouton droit de la souris (cela est intégré).
Je pense que si vous créez un script de traitement par lots reposant sur le répertoire actuel défini dans le dossier contenant le fichier de traitement par lots, vous vous créez un problème lorsque vous essayez d'exécuter le fichier de traitement à l'aide d'un chemin d'accès complet comme vous le feriez d'un programmateur.
Mieux vaut ajouter cette ligne à votre fichier de commandes aussi:
REM Change Current Directory to the location of this batch file
CD /D %~dp0
sauf si vous qualifiez pleinement tous vos chemins.
C'est peut-être une vieille quête, mais pour ceux qui, comme moi, recherchent cela sur Google, vous pouvez maintenir Shift et cliquer avec le bouton droit de la souris sur le dossier. De cette façon, le menu du contenu affichera la fenêtre de commande ouverte ici.
La manière la plus simple dans l'Explorateur est de déplacer Maj + clic droit de la souris sur le dossier ou sur un espace vide du dossier et de cliquer sur Open command Prompt here
.
CMD va alors démarrer dans ce dossier
Je dois dire que je ne suis pas sûr que cela fonctionne pour Windows Vista et les versions antérieures, mais cela fonctionne sûrement pour Windows 7, 8, 8.1 et 10.
Une autre solution consiste à utiliser un fichier de raccourci vers cmd.exe au lieu d’un fichier de traitement par lots.
Modifiez le raccourci début dans propriété en% ~ dp0 .
Vous obtenez la même chose, sauf qu’il a l’icône Cmd (et vous pouvez le changer).
Certaines personnes n'aiment pas cliquer sur les fichiers de commandes sans savoir ce qu'ils contiennent, et certains lecteurs de réseau d'entreprise interdisent les fichiers .bat ...
Vous pouvez ajouter une entrée de menu contextuel via le registre:
Accédez à HKEY_LOCAL_MACHINE/Software/Classes/Folder/Shell
Dans votre registre et créez une clé appelée "Invite de commandes" sans les guillemets.
Définissez la chaîne par défaut sur le texte que vous souhaitez voir apparaître dans le menu contextuel.
Créez une nouvelle clé dans l'invite de commande que vous venez de créer nommée "commande" et définissez la chaîne par défaut sur
cmd.exe /k pushd %1
Vous devrez peut-être ajouter %SystemRoot%\system32\
avant le fichier cmd.exe si l'exécutable est introuvable.
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 l'exécuter 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 fichier .bat.
Se référant à la réponse de @Chris,
Nous pouvons également aller au répertoire parent du fichier de commandes et exécuter les commandes en utilisant
cd /d %~dp0..
<OTHER_BATCH_COMMANDS>
cmd.exe
Pour comprendre le fonctionnement de la commande cd /d %~dp0..
, reportez-vous au lien ci-dessous.
Qu'est-ce que cela signifie par la commande cd/d% ~ dp0 sous Windows
Créez un nouveau fichier startCmdLine.bat dans votre répertoire et mettez-y cette ligne
call cmd
C'est ça. Maintenant, double-cliquez sur le fichier .bat. Ça marche pour moi.
Vous pouvez remplacer call par start, cela fonctionnera également.
tu peux essayer:
shift + right click
puis, cliquez sur Ouvrir l'invite de commande ici
Dans un dossier donné, cliquez sur le haut Barre d'adresse et tapez cmd et cliquez sur entrée Cela ouvrira l'invite de commande avec l'adresse du dossier actuel.
Un peu tard dans le jeu mais si je comprends bien vos besoins, cela aidera les gens avec le même problème.
Deux solutions avec la même première étape:.
Première solution:
Vous pouvez maintenant utiliser n'importe lequel de vos scripts comme si vous étiez déjà dans ce dossier.
Deuxième solution: (peut facilement être associé à la première pour une utilité supplémentaire)
Sur votre bureau, créez un fichier de commandes avec le contenu suivant.
@echo off
cmd /k cd "C:\your\file\path"
Cela ouvrira une fenêtre de commande semblable à celle que vous avez essayé de faire.
Pour des tonnes d’informations sur les commandes Windows, consultez ici: http://ss64.com/nt/
ce code fonctionne pour moinom il cmd.bat
@echo off
title This is Only A Test
echo.
:Loop
set /p the="%cd%"
%the%
echo.
goto loop