Jak odczytać dane wejściowe z konsoli w pliku wsadowym? To, co próbuję osiągnąć, to funkcjonalność scanf w C. Jak mogę zrobić to samo w pliku wsadowym?
set /pczyta wszystko, co użytkownik wpisze, czy to jedna litera, czy wiele.
Jak odczytać dane wejściowe z konsoli w pliku wsadowym? To, co próbuję osiągnąć, to funkcjonalność scanf w C. Jak mogę zrobić to samo w pliku wsadowym?
set /pczyta wszystko, co użytkownik wpisze, czy to jedna litera, czy wiele.
Odpowiedzi:
Fragment kodu w połączonym proponowanym duplikacie odczytuje dane wejściowe użytkownika.
ECHO A current build of Test Harness exists.
set /p delBuild=Delete preexisting build [y/n]?:
Użytkownik może wpisać tyle liter, ile chce, i trafi to do zmiennej delBuild.
%delBuild%
echo !delBuild!da ci to bardziej niezawodny wynik po setlocal EnableDelayedExpansionuruchomieniu, gdy jest włączony
Jeśli chcesz po prostu szybko otworzyć instancję cmd, zamiast natychmiast ją wychodzić, wystarczy wykonać następujące czynności
set /p asd="Hit enter to continue"
na końcu skryptu i pozostawi okno otwarte.
Zauważ, że zostanie to ustawione asdjako zmienna środowiskowa i można ją zastąpić czymkolwiek innym.
pausepolecenie. Także to set /pnie set \p.
cmd, ale nie Powershell. Upewnij się, że używasz właściwej rzeczy.
Oprócz istniejącej odpowiedzi można ustawić opcję domyślną w następujący sposób:
echo off
ECHO A current build of Test Harness exists.
set delBuild=n
set /p delBuild=Delete preexisting build [y/n] (default - %delBuild%)?:
Dzięki temu użytkownicy mogą po prostu nacisnąć „Enter”, jeśli chcą wprowadzić wartość domyślną.