Właśnie zacząłem próbować nauczyć się pisać pliki wsadowe i myślę, że mam kilka lub większość podstaw, ale po prostu nie mogę tego rozgryźć.
Czy jest możliwe, aby plik wsadowy poprosił użytkownika o wprowadzenie nazwy podfolderu, a następnie zmianę bieżącego katalogu na ten podfolder?
Na przykład, powiedzmy, że mój bieżący katalog to C:\Folder. Ten folder zawiera podfoldery Sub 1, Sub 2 i Sub 3. Jeśli użytkownik musi przejść do jednego z tych folderów, który może się zmieniać przy każdym uruchomieniu pliku, czy można wprowadzić nazwę podfolderu, a następnie plik wsadowy ma zmienić bieżący katalog na ten folder?
Może coś takiego:
CD C:\Folder
SET /p desiredFolder = Enter the name of the sub-folder you would like to go to:
Sub 1, Sub 2, or Sub 3
---User enters Sub 1 and hits enter---
CD C:\Folder\%desiredFolder%
Z góry dziękujemy za udzieloną pomoc!
2 odpowiedzi
Prawie skończyłeś, brakuje tylko kilku szczegółów:
1- W przypadku użycia jakiejkolwiek formy polecenia SET NIE umieszczaj spacji przed znakiem równości; w przeciwnym razie nazwa zmiennej zawiera spację:
SET VAR = VALUE
ECHO %VAR% show nothing
ECHO %VAR % show " VALUE"
2- Jeśli nazwa folderu może zawierać spacje, musisz umieścić całą nazwę folderu w cudzysłowie:
CD C:\Folder
SET /p desiredFolder=Enter the name of the sub-folder you would like to go to:
Sub 1, Sub 2, or Sub 3
---User enters Sub 1 and hits enter---
CD "C:\Folder\%desiredFolder%"
Możesz nawet spróbować:
@echo off
:start
set desiredFolder=
dir /AD /W /B
echo.---------------------------------------------------------
set /p desiredFolder=Enter the name of the folder you would like to go to:
echo %CD%\%desiredFolder%
IF NOT EXIST %CD%\%desiredFolder% echo..\%desiredFolder% does not exist, try again.
IF NOT EXIST %CD%\%desiredFolder% echo.--------------------------------------------------------- & goto start
Następnie użyj jednego z następujących po wierszu powyżej w zależności od tego, co chcesz zrobić
start cmd.exe /K chdir %CD%\%desiredFolder%
REM if you want to start your command window in a new directory
cmd.exe /K chdir %CD%\%desiredFolder%
REM if you want to change directories in your current command window
start %CD%\%desiredFolder%
REM if you want to open the folder in windows explorer
Podobne pytania
Nowe pytania
batch-file
Plik wsadowy to plik tekstowy zawierający serię poleceń wykonywanych przez interpreter poleceń w systemach MS-DOS, IBM OS / 2 lub Microsoft Windows.