Pierwsza strona lub taka z przepełnienia Google spowodowała porównywanie zmiennych z zmiennych. Ale jeszcze nie jestem jeszcze. Oto mój kod, zobacz, jak to jest proste, a jednak nie mogę na życie mnie, pracuje zgodnie z oczekiwaniami.

@ECHO OFF
SET /p isFirst= "First time setup? [y/n]: "
if (%isFirst% == y) (
    ECHO "First time setup." 
    CALL npm install
)

SET /p url= "Enter Base URL: "
ECHO Setting base URL to: %url%
CALL docker-compose down
CALL npm run build
CALL docker-compose build
CALL docker-compose up -d
pause
pause

Próbowałem:

if ("%isFirst%" == "y")
if ("%isFirst%" == 'y')
if ("%isFirst%" == y)
if (%isFirst% == y)

SET %isFirstTrue% = "y"
if ("%isFirst%" == %isFirstTrue%)

Nic. Żaden z nich nie pracowali. Żaden z nich nie echronicznie First time setup. A jednak ten drugi może echmować wynik url w porządku. Zakładam, że porównuję go z czymś w dół linii spowoduje ten sam problem.

Co mogłem zrobić w Pythonie przez przerwanie na lunch, potrzebowałem pomocy w partii. Czy brakuje czegoś?

0
zack_falcon 24 marzec 2020, 08:53

2 odpowiedzi

Najlepsza odpowiedź

Polecenie set za pomocą opcji /P akceptuje wkład, (Enter / Return Key) , albo absolutnie wszystko, co zawiera postacie trucizne. Radzę, aby nie używać polecenia set dla znanego pojedynczego cyfry wkładu znaków. Właśnie właśnie zaprojektowano wbudowany polecenie {x3}}. Wpisz choice /?, aby przeczytać informacje o użytkowaniu dla polecenia.

Przykład:

@Echo Off
"%__AppDir__%choice.exe" /M "First time setup"
If Not ErrorLevel 2 (
    Echo First time setup.
    Call "%ProgramFiles%\nodejs\npm.cmd" install
)
Rem Rest of code goes here

Uwaga: Zmodyfikuj lokalizację pliku partii npm on line 5 Jeśli odgadnęła to niepoprawnie.

1
Compo 24 marzec 2020, 12:40

Najwyraźniej tęskniłem, że wsad nie lubi, jeśli oświadczenia w nawiasie.

IF %isFirst% == "y" również nie działa.

%isFirst% == y robi.

0
zack_falcon 24 marzec 2020, 06:25