web-dev-qa-db-fra.com

Comment rassembler deux commandes ou plus dans un fichier batch

Je souhaite entrer une commande dans l'invite de commande après avoir atteint un emplacement spécifique. Comment puis-je atteindre cet objectif?

par exemple.,

set PathName="X:\Web Content Mgmt\Completed Filtering\2013_Folder"
set comd="dir /b /s *.Zip"
start "cmd" cd /d %PathName%

J'ouvre l'invite de commande et lui donne un chemin en utilisant PathName. Maintenant, après avoir atteint ce chemin spécifique, je souhaite insérer la variable comd dans l'invite de commande pour obtenir le résultat souhaité.

Voici les commandes spécifiques que j'essaie d'exécuter dans le fichier de commandes:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Users\anoopn>x:
X:\>cd
X:\Web Content Mgmt\Completed Filtering\2013_Folder
X:\Web Content Mgmt\Completed Filtering\2013_Folder> dir /b /s *.Zip > C:\Users\anoopn\Desktop\abc.csv
20
Anoop

Pour obtenir une entrée utilisateur:

set /p pathName=Enter The Value:%=%
@echo %pathName%

enter image description here

p.s. c'est aussi valable: 

set /p pathName=Enter The Value: 

35
Royi Namir

Vous pouvez utiliser la commande suivante. La SET définira l'entrée de la console utilisateur sur la variable comment et vous pourrez ensuite utiliser cette variable en utilisant% comment%

SET /P comment=Comment: 
echo %comment%
pause
3
Sunil Garg

Essayez ceci: édité

@echo off
set "comd=dir /b /s *.Zip"
set "pathName="
set /p "pathName=Enter The Value: "
cd /d "%pathName%"
%comd%
pause
2
foxidrive
set "PathName=X:\Web Content Mgmt\Completed Filtering\2013_Folder"
set "comd=dir /b /s *.Zip"
cd /d "%PathName%"
%comd%
2
Endoro

si je vous ai bien compris (pas sûr), le paramètre start/D devrait vous aider:

start "cmd" /D %PathName% %comd%

/ D définit le répertoire de départ (Voir start /?)

0
Stephan

Si vous créez d'autres fichiers de commandes à partir de vos sorties, insérez une ligne comme celle-ci dans votre fichier de commandes. 

echo %pathname%\foo.exe >part2.txt

alors vous pouvez avoir votre part1.txt et part3.txt définis déjà fait et avoir votre lot

copy part1.txt + part2.txt +part3.txt thebatyouwanted.bat
0
user2872482