Батник на отправку файла с изменяемым именем
Подскажите пожалуйста, как реализовать через blat отправку файла, у которого каждый день меняется имя (имя текущая дата).
|
Для начала изложить а) месторасположение файла и б) алгоритм, по которому строится его имя.
|
а) файл располагается на локальном компьютере в C:\Program Files (x86)\program\logs\csv\daily
б) log-2017-04-20.csv и соответственно завтра будет имя файла log-2017-04-21.csv
|
badcat177, могут ли быть там другие .csv-файлы? А впрочем…
Попробуйте так:
Скрытый текст
Код:
@echo off
setlocal enableextensions enabledelayedexpansion
set sSourceFolder=%ProgramFiles(x86)%\program\logs\csv\daily
pushd "%sSourceFolder%" && (
for /f "usebackq delims=" %%i in (
`2^>nul dir /a:-d /o:-n /b "log-????-??-??.csv" ^| findstr.exe /i /r /c:"log-[0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]\.csv"`
) do if not defined sSourceFile set sSourceFile=%%~i
popd
) || (
echo Can't find source folder [%sSourceFolder%].
exit /b 1
)
if defined sSourceFile echo [%sSourceFile%]
endlocal
exit /b 0
|
Iska, Других файлов там не будет, только с таким форматом имени, и ещё такой вопрос, как это совместить с blat? чтобы этот файл отправлялся на почту, сам блат я настрою
|
Цитата:
Цитата badcat177
как это совместить с blat? »
|
Я же не знаю, что там у Вас ещё в коде. Подставляйте вместо выделенного:
Код:
if defined sSourceFile echo [%sSourceFile%]
В переменной окружения sSourceFile будет имя файла.
|
Iska,
Спасибо большое, Ваш код помог на все 1000% )
|
Время: 22:43.
© OSzone.net 2001-