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
Owner
Master Level 8.5
Master Level 8.5
Příspěvky: 7260
Registrován: červenec 07
Bydliště: Třinec
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: Jak spustit BAT jen jednou denně?

Příspěvekod Owner » 21 srp 2009 09:02

On chce,ať se jedenkrát denně spustí určitý příkaz (třeba ping pc-help.cz).
Ten příkaz mu funguje,ale neví,jak nastavit spouštění 1x denně a ne po každém restartu.
Fallout fan | HJT | MWAV | CCleaner | Provozuji Minecraft server Minecore.cz | Osobní blog
Notebook: Thinkpad X200s - 12", Core2Duo L9300, 9cell, 240GB SSD, 5GB DDR3
PC: AMD Phenom II X6 1055T, 12GB DDR3, AMD 6870, 500GB Seagate 7200.12

Reklama
Uživatelský avatar
Sender
Level 3.5
Level 3.5
Příspěvky: 700
Registrován: leden 07
Bydliště: Vysočina
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod Sender » 21 srp 2009 12:03

Zkus tohle (viz příloha -přejmenovat soubor na *.zip).

Tak tohle ne.

Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3207
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod atari » 21 srp 2009 15:24

Tak to malinko dopřesním. Jedná se o to, že to je pro lidi v práci na které nemohu spoléhat, že to spustí. Potřebuji provést nějaké přesuny souborů, archivaci dat z ředešlého dne na jinou část disku a lehkou defragmentaci. To vše potřebuji provést každé ráno, aby na to nemusel nikdo myslet, abych vyloučil chybu lidského faktoru. Takže jsem na to vytvořil BATovou dávku která mě toto všechno udělá.

Uživatelský avatar
alenka_v_říši_divů
Level 6
Level 6
Příspěvky: 3201
Registrován: únor 09
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod alenka_v_říši_divů » 21 srp 2009 15:57

A jak vypínáte komply.... odpojujete z elektřiny? ...Nevadilo by ti,kdyby se PC třeba o půlnoci na chvíli zapl,vykonal tvůj.bat a zas vypl? //EDIT : tím sem myslel,že by se PC zapl sám a vypl.
Naposledy upravil(a) alenka_v_říši_divů dne 21 srp 2009 18:03, celkem upraveno 1 x.

Uživatelský avatar
Jan Pašek
Tvůrce článků
Level 6.5
Level 6.5
Příspěvky: 3701
Registrován: leden 06
Bydliště: Plzeň
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod Jan Pašek » 21 srp 2009 16:13

základ je v podstatě jednoduchý:

Kód: Vybrat vše

If not exist %systemdrive%\datum.txt echo %date%> %systemdrive%\datum.txt
for /f "delims=¨" %%a in (%systemdrive%\datum.txt) do set datum=%%a
if not "%date%"=="%datum%" call "davka.bat"
%date%> %systemdrive%\datum.txt


POpis:
Pokud neexistuje soubor datum na systémovém disku zapiš jej.
Načti hodnotu ze souboru datum.txt
Pokud se nerovnají hodnoty systémové proměnné datum a hodnoty načtené ze souboru spust davka.bat
Zapiš novou hodnotu do souboru datum.txt

napsáno z patra je třeba otestovat a upravit.
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: 3207
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod atari » 21 srp 2009 16:31

to Jan Pašek: to by mohlo být přesně ono. Zkusím spustit a vyzkoušet, eventuelně odladit, ale na to už si moc netroufám, dám vědět jak to dopadlo.... až v noci...venku je moc hezky....
Pouštět kompy v noci mi připadá zbytečné, tomu bych se rád vyhnul. Vyřešit to touto dávkou mi připadá elegantní.

Uživatelský avatar
alenka_v_říši_divů
Level 6
Level 6
Příspěvky: 3201
Registrován: únor 09
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod alenka_v_říši_divů » 21 srp 2009 17:06

Pevně věřím,že ti to od Jendy bude fachat... akorát sem se chtěl zeptat,zda-li mají ti lidi v práci pevnou pracovní dobu :) Kdyby jo,tak by stačilo vložit do plánovače akorát čas ,kdy se má spustit vytvořený tento bat:
SET reg=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
REG ADD %reg% /v "nějakej název" /t REG_SZ /d "C:\cesta k tvýmu batu"
Dejme tomu,že končí v osm,tak by se to zaplo ve tři čtvrti...

Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3207
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod atari » 21 srp 2009 18:40

Sice jsem tento bat nepochopil, spouští se to asi nějak přes registry, ani nevím proč by to tak mělo být, na to už moje znalosti nestačí.
Ale problém je jiný. Není podstatné kdy končí pracovní doba, podstatné je, kdy lidé vypnou PC, což bývá různé. A další problém je, že když zapomenou vypnout software (s jehož soubory pracuji v dávce), tak moje dávka bude pracovat s "otevřenými" soubory, a to by mohl být problém. Já potřebuji moji dávku spustit pouze v tom okamžiku, kdy mám jistotu, že neběží používaný software na daném PC. A tuto jistotu mám pouze při zapnutí.
Pokud bych to udělal jinak, tak už to je vždy složitější uhlídat, aby lidi vypnuly software, nebo to ošetřit v dávce (což neumím) atd. Takže jsem zvolil tento koncept pro mě nejjednodušší, funkční a dostačující pro daný účel.

Uživatelský avatar
alenka_v_říši_divů
Level 6
Level 6
Příspěvky: 3201
Registrován: únor 09
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod alenka_v_říši_divů » 21 srp 2009 18:54

No ten bat uloží do registru příkaz pro spuštění tvýho batu hned po zapnutí PC /lze to nějak udělat i před přihlášením/a pak se položka v registru automaticky vymaže .... a obnoví jen kdy dá povel naplánovaná úloha... ale to je stejně jedno,když se konec pracovní doby nevztahuje na užívání počítačů... leda ,že by se toto spouštělo při vypínání - né restartování ... ale to by nejspíš musel proces ,kterej vypíná PC zároveň spustit bat /co sem poslal/ ... což myslím lze dokázat...Ale vůbec...co tu prndám,zvolil si koncept a už to fičí ne? :)

Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3207
Registrován: říjen 08
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod atari » 21 srp 2009 21:19

Tak jsem to takto napsal a vyzkoušel:
If not exist %systemdrive%\datum.txt echo %date%> %systemdrive%\datum.txt
for /f "delims=¨" %%a in (%systemdrive%\datum.txt) do set datum=%%a
if not "%date%"=="%datum%" call "davka.bat"
%date%> %systemdrive%\datum.txt
a nefunguje to, respektive call "davka.bat" se provádí pokaždé.

Soubor "datum.txt" se na disku vytvoří, ale je pořád prázdný.
Nechal jsem si vypsat proměnnou %date% a má dnešní datum "pá 21.08.2009", což je OK.
Ale za posledním řádkem: "%date%> %systemdrive%\datum.txt" mi to píše tuto větu:
"pá není názvem vnitřního ani vnějšího příkazu,
spustitelného programu nebo dávkového souboru"

Předpokládám, že proměnná %datum% neobsahuje datum, ale nevím si s tím rady.

Uživatelský avatar
Jan Pašek
Tvůrce článků
Level 6.5
Level 6.5
Příspěvky: 3701
Registrován: leden 06
Bydliště: Plzeň
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod Jan Pašek » 22 srp 2009 00:18

oprava:

Kód: Vybrat vše

@echo off
cls
echo.
echo  systemove datum: %date%
If not exist %systemdrive%\datum.txt echo %date:~3,2% > %systemdrive%\datum.txt
for /f  %%i in (%systemdrive%\datum.txt) do set datum=%%i
echo.
echo Hodnota ulozena v souboru Datum.txt = %datum%
echo Hodnota casti systemoveho data: %date:~3,2%
echo.
if not "%date:~3,2%"=="%datum%" (
echo spoustim davku "davka.bat"
call "davka.bat"
echo %date:~3,2% > %systemdrive%\datum.txt
) else echo dnes jiz byla davka.bat spustena
pause

uz je dlouho priste variace na téma s příkazem find
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
Sender
Level 3.5
Level 3.5
Příspěvky: 700
Registrován: leden 07
Bydliště: Vysočina
Pohlaví: Muž
Stav:
Offline

Re: Jak spustit BAT jen jednou denně?

Příspěvekod Sender » 22 srp 2009 08:49

Konečně jsem tady .... bojoval jsem s virem a vyhrál !

Jestli se ti nechce nad tím laborovat v dávkovým souboru,tak můžeš zkusit můj program SpustitBat.

Popis:
Nastavení programu je uloženo v *.dat souboru (ini formát).Lze jej editovat jako textový.V případě smazání *.dat se po spuštění hlavního programu (SpustitBat.exe) se znovu vytvoří s defaultními parametry.
Dávkový soubor (Davka.bat) je spuštěn skrytě , hlavní program nečeká na jeho ukončení (můžu případně upravit) a nemá nad dávkovým souborem žádnou kontrolu.

Edit:
>>příloha smazána<<
Naposledy upravil(a) Sender dne 24 srp 2009 21:53, celkem upraveno 1 x.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Tiskárna černobílá 30 stran denně
    od Gerete » 27 lis 2023 19:41 » v Rady s výběrem hw a sestavením PC
    4
    1117
    od richchie Zobrazit poslední příspěvek
    30 lis 2023 18:43
  • Chyba - nelze spustit Příloha(y)
    od Jonáš Brožek » 04 říj 2023 08:32 » v Kancelářské balíky
    1
    3046
    od petr22 Zobrazit poslední příspěvek
    04 říj 2023 09:25
  • AMD Adrenaline Edition - nelze spustit
    od janekdeeste » 26 zář 2023 07:42 » v Vše ostatní (sw)
    0
    2267
    od janekdeeste Zobrazit poslední příspěvek
    26 zář 2023 07:42
  • Nelze spustit windows defender Příloha(y)
    od PARKR » 19 pro 2023 17:29 » v Windows 11, 10, 8...
    13
    1868
    od PARKR Zobrazit poslední příspěvek
    20 pro 2023 09:18
  • nelze spustit wifi po vměně karty Příloha(y)
    od akem » 28 pro 2023 14:33 » v Problémy s hardwarem
    28
    1697
    od akem Zobrazit poslední příspěvek
    30 pro 2023 22:19

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

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 23 hostů