Цитата qqwwaass:
т.е. поместил в нужную папку и запустил от туда пакетный файл, »
|
Стало быть не «папка из которой запускается батник», а папка, в которой
находится пакетный файл. Побочным эффектом такого некорректного использования будет появление в списке имени самого пакетного файла.
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
>nul chcp 1251
set "sPath=%~dp0"
set "sFileName=list_musuc_%DATE%.txt"
>"%sPath%%sFileName%" dir /b "%sPath%"
>nul chcp 866
endlocal
exit /b 0
И никогда,
никогда не используйте
всуе не по назначению переменную окружения «PATH»!
Правильным же использованием считается «мухи отдельно, котлеты отдельно» — пакетный файл лежит в одном месте, работает везде, где потребно. Вместо того, чтобы плодить его копии где ни попадя, держите пакетный файл в одном месте и перетаскивайте на него искомую папку. Такой пакетный файл может выглядеть, например, следующим образом:
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=%~1
if defined sSourceFolder (
>nul chcp 1251
>"%sSourceFolder%\list_musuc_%DATE%.txt" (
for /f "usebackq delims=" %%i in (
`dir /b "%sSourceFolder%"`
) do if "%%~i" neq "list_musuc_%DATE%.txt" echo %%~i
)
>nul chcp 866
) else (
echo Usage: %~nx0 ^<Source folder^>
exit /b 1
)
endlocal
exit /b 0