Почему эта команда не работает? Как это исправить?
for /F %%i in ('dir c:\logs /A:-D/B') do @echo %%i:~0,5%
решение1
Почему эта команда не работает?
для /F %%i в ('dir c:\logs /A:-D/B') сделать @echo %%i:~0,5%
Вам необходимо использовать временную переменную, поскольку вы не можете извлечь текст из переменной цикла.
Вам нужно использоватьотсроченное расширение.
Попробуйте следующий cmd-файл:
@echo off
setlocal enabledelayedexpansion
for /F %%i in ('dir c:\logs /A:-D/B') do (
set _temp=%%i
set _result=!_temp:~0,5!
echo !_result!
)
endlocal