Jak spustit BAT jen jednou denně?

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Jak spustit BAT jen jednou denně?

Příspěvek od atari »

Tak ta dávka je super, funguje bez problémů, díky moc.
to Sender: taky funguje, a čekaní hlavního programu na ukončení dávky není potřeba, časové posloupnosti si ukočíruji v dávce, taky díky moc
Uživatelský avatar
Jan Pašek
Tvůrce článků
Příspěvky: 3701
Registrován: 27 led 2006 10:48
Bydliště: Plzeň

Re: Jak spustit BAT jen jednou denně?

Příspěvek od Jan Pašek »

Problém je vyřešený přesto si neodpustím jistá vylepšení a variace na téma. "Bo nejen jedna cesta vede do Říma".

Nejprve pozměníme posledně danou dávku tak aby spouštěla soubor "dávka.bat" i při prvním spuštění. Vypustíme některé myslím zbytečné hlášky. Protože si potrpím na parádičky přidáme nabarvení tak aby pokud bude spuštěno byl podklad písma zelený pokud se spouštět nebude bude podklad červený. Nahradíme příkaz "pause" obdobou, která odpočte čas a dávka se pak sama uzavře.

Kód: Vybrat vše

@echo off
cls
echo.
If not exist %systemdrive%\datum.txt (
color 2E
echo %date:~3,2% > %systemdrive%\datum.txt
call "davka.bat"
echo  Spoustim davku "davka.bat"
goto end
)
for /f  %%i in (%systemdrive%\datum.txt) do set datum=%%i
if not "%date:~3,2%"=="%datum%" (
color 2E
echo  Spoustim davku "davka.bat"
call "davka.bat"
echo %date:~3,2% > %systemdrive%\datum.txt
) else (
color 4E
echo Dnes jiz byla davka.bat spustena
)
:End
ping -n 10 localhost >nul

V příštím příspěvku slíbená náhrada příkazu "For" příkazem "Find" při zachování funkce dávky
Jendův rozcestník (Odkazy, které jsem měl dříve v podpisu najdete v mém rozcestníku.) Jendovy novinky - Co je pro Vás odemne nového Pokud potřebujete mermomocí vědět na čem páchám PC kriminalitu sestavy jsou v profilu.
Uživatelský avatar
Jan Pašek
Tvůrce článků
Příspěvky: 3701
Registrován: 27 led 2006 10:48
Bydliště: Plzeň

Re: Jak spustit BAT jen jednou denně?

Příspěvek od Jan Pašek »

Jak sem slíbil:
Změna jednoho příkazu přinesla výrazné zmenšení souboru dávky při zachování veškerých funkcí, které měla dávka presentovaná výše.

Kód: Vybrat vše

@echo off
cls
echo.
find "%date%" %systemdrive%\datum.txt > nul
if "%errorlevel%"=="1" (
color 2E
echo  Spoustim davku "davka.bat"
call "davka.bat"
echo %date% > %systemdrive%\datum.txt
) else (
color 4E
echo  Dnes jiz byla davka.bat spustena
)
ping -n 8 localhost >nul

Dále jsou možné ještě drobné úpravy: Pokud by se mělo zobrazit datum posledního spuštění lze to takto:

Kód: Vybrat vše

@echo off
cls
echo.
if exist %systemdrive%\datum.txt for /f "delims=¨" %%i in (%systemdrive%\datum.txt) do Echo  Naposledy byla "davka.bat" spustena %%i
find "%date%" %systemdrive%\datum.txt > nul
if "%errorlevel%"=="1" (
color 2E
echo.
echo  Spoustim davku "davka.bat"
call "davka.bat"
echo %date%> %systemdrive%\datum.txt
) else (
color 4E
echo.
echo  To je dnes, proto se jiz dnes nespusti.
)
ping -n 8 localhost >nul

Hovgh téma zdá se je tímto z mé strany vyčerpáno.
Jendův rozcestník (Odkazy, které jsem měl dříve v podpisu najdete v mém rozcestníku.) Jendovy novinky - Co je pro Vás odemne nového Pokud potřebujete mermomocí vědět na čem páchám PC kriminalitu sestavy jsou v profilu.
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Jak spustit BAT jen jednou denně?

Příspěvek od atari »

Hezký... :shock: Jsem zvědav na další.
Uživatelský avatar
Jan Pašek
Tvůrce článků
Příspěvky: 3701
Registrován: 27 led 2006 10:48
Bydliště: Plzeň

Re: Jak spustit BAT jen jednou denně?

Příspěvek od Jan Pašek »

To atari když tak rýpáš.. ještě doplním kde sehnat nápovědu k jednotlivým příkazům v dávce a t.p. prostě kde se učit pokud potřebujete pomoc a nikdo zkušený není poruce.
Základní nápovědu k příkazům zadávaným do příkazového řádku popř. do dávkového souboru máte každý ve svém PC a není na ni třeba ani připojení k internetu.
Klik Start -> Klik Spustit -> Napiš CMD do příkazového řádku -> Klik OK -> Napiš HELP -> Stiskni Enter
Podrobnější popis jednotlivých příkazů získáte:
Klik Start -> Klik Spustit -> Napiš CMD do příkazového řádku -> Klik OK -> Napiš příkaz a přidej /? -> Stiskni Enter

Internetová stránka s příkazy příkazového řádku nebo dávky (bohužel plně podporuje pouze IE):
Příkazový řádek A–Z

kursy a lekce = Seriály o příkazovém řádku:
Příkazová řádka – 1. lekce

Příkazový řádek základy s ukázkou textu dávky:
http://www.boss.estranky.cz/clanky/uvt/davkove-soubory

Docela dobré počtení nejen o příkazovém řádku:
1) http://www.molik.go.cz/index.html
2) Velká sbírka tipů a triků pro Windows
Jendův rozcestník (Odkazy, které jsem měl dříve v podpisu najdete v mém rozcestníku.) Jendovy novinky - Co je pro Vás odemne nového Pokud potřebujete mermomocí vědět na čem páchám PC kriminalitu sestavy jsou v profilu.
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Jak spustit BAT jen jednou denně?

Příspěvek od atari »

To bych si nedovolil. Ta moje věta "Jsem zvědav na další." ta patřila za příspěvek z 9:29hod, kde bylo avízo na příkaz "find". Asi jsem to neměl aktualizované, takže jsem to psal tak tam už ten příkaz "find" byl aniž bych to věděl.
Jinak díky za dávky i za tipy na stránky, určitě budu studovat.
Odpovědět
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Notebook BSOD 1-2x denně
    od Gerete » » v BSOD (Blue Screen Of Death)
    11 Odpovědi
    11308 Zobrazení
    Poslední příspěvek od atari
  • Battlefield 4 nejde spustit...
    od liborek » » v Hry
    0 Odpovědi
    8635 Zobrazení
    Poslední příspěvek od liborek
  • Fortnite nejde spustit
    od makojed » » v Hry
    7 Odpovědi
    8023 Zobrazení
    Poslední příspěvek od makojed
  • Počítač jde spustit až na druhý pokus
    od RoseWalker » » v Problémy s hardwarem
    8 Odpovědi
    9864 Zobrazení
    Poslední příspěvek od sim20
  • Firewall WIndows Defender nejde spustit
    od Richard_ZZR » » v Windows 11, 10, 8...
    1 Odpovědi
    3233 Zobrazení
    Poslední příspěvek od Tint

Zpět na „Programování a tvorba webu“