O problema está nessa parte do código:
for /l %%x in (1, 1, %num%) do (
set /p "inp=Enter Ext of PC: "
echo pc-%inp%x>>"Myfile.log"
)
Aqui está o código completo:
@ECHO OFF
:: +++++++++++++++++++ MENU +++++++++++++++++++++
:menu
cls
echo.
echo 1) Add PCs to Log File
echo 2) View Log File
echo 3) Exit
echo.
goto option
:option
set /p op=Type option #:
if "%op%"=="1" goto addext
if "%op%"=="2" goto viewcnt
if "%op%"=="3" goto exit
:: ++++++++++++++++++++ OPTIONS ++++++++++++++++++++++
:addext
:: Enter Number of PCs to Add to Log File
echo.
set /p "num=Enter Num of PCs to Add: "
echo.
goto addlog
:addlog
:: Create/Clear Log File/Enter Computer Extensions/Write to Log File
cls
echo.
echo.>"Myfile.log"
for /l %%x in (1, 1, %num%) do (
set /p "inp=Enter Ext of PC: "
echo pc-%inp%x>>"Myfile.log"
)
echo.
pause
goto menu
:viewcnt
:: View Log File
type Myfile.log
echo.
pause
goto menu
:exit
@exit
Objetivos
Insira o número de PCs para adicionar ao arquivo de log - Works
set /p "num=Enter Num of PCs to Add To: "
Saída:
Enter Num of PCs to Add To:
Criar / Apagar Arquivo de Log (cada vez que a opção 1 do menu é escolhida) - Funciona
echo.>"Myfile.log"
Defina a variável %inp%
para cada um dos Número de computadores de %num%
variable - Precisa de ajuda
for /l %%x in (1, 1, %num%) do (
set /p "inp=Enter Ext of PC: "
echo pc-%inp%x>>"Myfile.log"
)
Saída:
Enter Ext of PC:
(itera o número de vezes que %num%
é igual a)
- Solicita a entrada da variável de extensão para o número de vezes prescrito pela entrada anterior - Works
- Capaz de digitar em cada extensão - Works
- Não tenho certeza do que acontece com a variável inserida - Precisa de ajuda
Grave as variáveis no arquivo de registro - Precisa de ajuda
echo pc-%inp%x>>"Myfile.log"
- O prefixo que precede a variável mostra o número de vezes que foi inserido - Works
- Não incluindo as variáveis inseridas - Precisa de ajuda
Visualizar arquivo de log - Works
type Myfile.log
Outras considerações:
-
pc-%inp%
é o nome do computador (prefixo: pc-) seguido por
(variável: %inp%
/ example: pc-a001 )
-
%inp%
precisa ser Alphanumberic (uma carta seguida por 3
números: a001 )