Jaroslav Votruba wrote: > potrebuji vymazat miliony logu z adresare, nicmene je jich tam asi moc a > odpalkuje me to. jak to poresit? > > [EMAIL PROTECTED] rdt1]# find *.log -atime +7 -exec rm -f {} \; > bash: /usr/bin/find: Příliš dlouhý seznam argumentů
To je proto, ze jakmile je tam primo napsano *.log, tak tenhle zapis uz shell (tedy driv, nez se vubec spusti find) nahradi seznamem souboru, ktere vyhovuji patternu. A tim prekroci maximalni delku prikazove radku. Pepovo find . -name '*.log' -atime +7 | xargs rm -f tuhle vadu nema, protoze '*.log' je v apostrofech a tudiz ho shell neexpanduje, dostane se nezmeneny az k findu a ten uz si to vyresi sam. Snad jen - ja bych misto -exec nebo xargs napsal proste: find . -name '*.log' -atime +7 -delete Tim se soucasne resi otazka bezpecnosti vuci souborum, ktere v nazvu obsahuji "divne znaky" jako jsou mezery nebo konce radku. Teda, ja bych to napsal jeste jinak: find . -name '*.log' -ctime +7 -delete Pripada mi zeby se LOGy mazaly podle casu, kdy k nim nekdo naposledy pristoupil - logictejsi je mazat podle data vytvoreni nebo jeste tak posledni modifikace (-mtime) ... Dan -- FreeBSD mailing list (users-l@freebsd.cz) http://www.freebsd.cz/listserv/listinfo/users-l