CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy

Ответить
 • Просмотры: 1
Аватара пользователя
Georgio

Re: CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy

Сообщение Georgio »

Цитата infoman1@vk:



как это исправить?
CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy








Код:

Код: Выделить всё

@echo off
setlocal enabledelayedexpansion
for /f "tokens=1-5 delims=,.\ " %%a in ("%time::=% %date%") do (
 set d=0%%c
 set m=0%%d
 if %%e!m:~-2!!d:~-2! geq 20150101 (
  for /f "tokens=* delims=0" %%f in ("%%a%%b") do (
   if %%f geq 15000000 (
    start "" "1.exe"
    )
   )
  )
 )
endlocal
exit /b

infoman1@vk, обратите впимание: теперь дата подставляется с соответствующими нулями, а время, как и было, без начальных нулей, за исключением одного нуля в случае "0:00:00,00".
Аватара пользователя
Georgio

Re: CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy

Сообщение Georgio »

При использовании "wmic.exe" весь код можно записать в одну строку:

Код:

Код: Выделить всё

@for /f "tokens=2 delims==+" %%i in ('wmic OS get LocalDateTime /value') do @if %%i geq 20150101150000.000000 start "" "1.exe"

.
Аватара пользователя
infoman1@vk

Re: CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy

Сообщение infoman1@vk »

Цитата Georgio:



Код:

@echo off

setlocal enabledelayedexpansion

for /f "tokens=1-5 delims=,.\ " %%a in ("%time::=% %date%") do (

set d=0%%c

set m=0%%d

if %%e!m:~-2!!d:~-2! geq 20150101 (

for /f "tokens=* delims=0" %%f in ("%%a%%b") do (

if %%f geq 15000000 (

start "" "1.exe"

)

)

)

)

endlocal

exit /b
CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy






дату ставлю 20140101

время:

15000000 - не запускает 1.exe

05000000 - не запускает 1.exe

08000000 - запускает 1.exe

09000000 - запускает 1.exe

10000000 - не запускает 1.exe

даты не меняю только время, как вы видите дата давно прошла. а файл то запускается то нет
Аватара пользователя
Iska

Re: CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy

Сообщение Iska »

Цитата Georgio:



При использовании "wmic.exe" весь код можно записать в одну строку:

Код:

@for /f "tokens=2 delims==+" %%i in ('wmic OS get LocalDateTime /value') do @if %%i geq 20150101150000.000000 start "" "1.exe"

.
CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy




будет ли скрипт работать на всех версиях виндовса?

у меня хр скрипт работает. а на других версиях ?
Аватара пользователя
Iska

Re: CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy

Сообщение Iska »

Цитата infoman1@vk:



будет ли скрипт работать на всех версиях виндовса?
CMD/BAT - [решено] bat который при запуске системы проверяет дату и запускается в hh.dd.mm.yyyy




Только от Windows XP Professional и выше. На Windows XP Home Edition и предыдущих версиях Windows — «wmic.exe» отсутствует.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»