Batch Wyciągnięcie zmiennej i wstawienie ją w pasek adresu


(si@tk@rz) #1

Mam taki kod:

@Echo off

ipconfig /all >> ip.txt

I chciałbym aby ten batch w nazwie pliku tekstowego zamiast "ip" wstawiał nazwę hosta która wyświetlana jest po użyciu polecenia "ipconfig /all"

Czyli jeśli mamy komputer gdzie nazwa hosta to: mark21 to nazwa pliku utworzonego przez ten batch miałaby mieć mark21.txt


([alex]) #2

@echo off

ipconfig /all >ip.txt

set tmp=

for /F "skip=3 tokens=2 delims=:\n" %%i in (ip.txt) do set tmp=!tmp! %%i

for %%i in (%tmp%) do if exist ip.txt ren ip.txt %%i.txt

set tmp=

Tylko nie pamiętam z jaką opcją ma być cmd odpalony jedna z /F /E /V

sam poeksperymentuj lub wyczytaj w set /?

chodzi o fragment z wykrzyknikami.