Portál AbcLinuxu, 7. prosince 2025 14:31


Dotaz: Název souboru podle aktuálního data

2.7.2003 15:09 T P | skóre: 8
Název souboru podle aktuálního data
Přečteno: 687×
Odpovědět | Admin
Potřebuji prosím poradit se správnou syntaxí příkazu ve scriptu. V bashi mám udělaný script, který přes cron každý den provede zálohu dat a výsledek mi posílá do log souboru. Soubor ale neustále narůstá a není to ideální pro dohledávání problémů. Potřebuji aby si script každý den vytvořil soubor podle aktuálního data a tam zapisoval.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jiří Svoboda avatar 2.7.2003 15:24 Jiří Svoboda | skóre: 37 | blog: cat /dev/mind | Prostějov
Rozbalit Rozbalit vše Název souboru podle aktuálního data
Odpovědět | | Sbalit | Link | Blokovat | Admin
ja bych to udelal nejak takhle:
#!/bin/bash
FILE=backup-$(date +%y%m%d).log
necodelej >$FILE
mam se tu i vykakat, nebo je to jasne? :-)
2.7.2003 15:33 T P | skóre: 8
Rozbalit Rozbalit vše Název souboru podle aktuálního data
Jasně že je to jasné :-) Díky moc Sokolíku ...
2.7.2003 15:32 RWS
Rozbalit Rozbalit vše Nazev souboru podle aktualniho data
Odpovědět | | Sbalit | Link | Blokovat | Admin
nebylo by od veci zkusit logrotate na ten log soubor (viz. man logrotate)? :-) no, jestli ne, tak ne, ale ja jen, aby ses tu za mesic neptal, jak automaticky mazat tyhle soubory po X dnech:-)
2.7.2003 17:02 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Nazev souboru podle aktualniho data
na logrotate mi trochu vadí právě to, že to pojmenovává .1, .2, etc. a nedá se to nastavit na datum (předp. že rotuji pravidelně a ne podle velikosti) -- nebo dá a jsem jen blbej?
3.7.2003 10:36 RWS
Rozbalit Rozbalit vše Nazev souboru podle aktualniho data
Bohuzel cislovani je tam, da se urcit kolik cisel ma zachovavat. Rotovat se da podle velikosti logu, casu stari (daily, monthly, weekly) a nebo vynucene (force)-takze kdyz to chces treba po 5 minutach, tak v cronu 5 minutovej force. Je hezky, ze logrotate to umi hned comprimovat a mazat stare, proste jen pises do logu; o cislovani a mazani starych se nestarach. Ale samozrejme to muzes resit svym napadem:) To byl jen dalsi navrh reseni:)
3.7.2003 10:45 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Nazev souboru podle aktualniho data
já logrotate znám -- ale když máš 50 uložených logů, navíc komprimovaných, tak když chceš najít něco z předminulého pátku, musíš počítat dny... no, ale možná by patch na logrotate, který by přidal option, že se má číslovat časem, a option, jaký formát (strftime) ten čas má mít, nebyl tak težký -- největší problém by asi byl, aby se správně našly všechny ty soubory, co se mají odrotovat, protože se teď budou moci jmenovat dost libovolně, a udělat něco smysluplného, když se bude rotovat rychleji, než bude strftime při daném formátu dávát různé řetezce
3.7.2003 11:56 RWS
Rozbalit Rozbalit vše Nazev souboru podle aktualniho data
ale když máš 50 uložených logů, navíc komprimovaných, tak když chceš najít něco z předminulého pátku, musíš počítat dny.

A nebo ls -l a sledovat datum rotovani:) Ale samozrejme s datumem je to pohodlnejsi a kdybys chtel mazat treba starsi nez 30 dni, tak
find . -type f -ctime +30 | xargs rm -f

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.