Portál AbcLinuxu, 14. května 2025 02:28

Dotaz: Příkaz nefunguje v logrotate lastaction

27.10.2018 09:55 camel1cz | skóre: 25
Příkaz nefunguje v logrotate lastaction
Přečteno: 174×
Odpovědět | Admin
Ahoj,

používám logrotate na zpracovávání logů a potřebuju najít logy, které se nezměnily přes měsíc. Toho docílím takto:

find /data/www/*/log/archive/ -maxdepth 1 -mtime +32 -name *.log

Problém je, že to funguje jen při ručním spuštění - pří spuštění z logrotate sekce lastaction hází stejný skript chybu:

/usr/bin/find: paths must precede expression: 201702.access.log

Je mi jasné, že v prostředí logrotate je zřejmě jinak nastavený bash (ten používám na spuštění v obou případech - dokonce spouštím explicitne /bin/bash skript.sh) - ale nemůžu přijít na to, v čem je rozdíl a popř. jak mám přepsat ten vyhledávací příkaz.

Pomůžete někdo? Díky moc!

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Řešení 1× (camel1cz (tazatel))
27.10.2018 11:36 NN
Rozbalit Rozbalit vše Re: Příkaz nefunguje v logrotate lastaction
Odpovědět | | Sbalit | Link | Blokovat | Admin
Pouzit:
\*.log
,nebo
'*.log'
Podle te hlasky se to pred spustenim snazi expandovat?
27.10.2018 12:18 camel1cz | skóre: 25
Rozbalit Rozbalit vše Re: Příkaz nefunguje v logrotate lastaction
Ano, to dává smysl - nějak mě to netrklo. Díky! Zítra budu vědět :)

Tušíš proč se to tak chová? Že by jiný terminál?

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.