Linux - skrypt
beavis - 29 Kwi 2005 11:26
Moje pytanie dotyczy skryptu, który raz w tygodniu sprawdzałby dany katalog i usuwał z niego pliki i katalogi które są starsze niż (np 14 dni). Jak powinien wyglądać?
Proszę grono forumowiczów o pomoc gdyż dopiero rozpocząłem naukę linuxa i póki co nie jestem w stanie tego sam napisać
marek216 - 29 Kwi 2005 20:14
to jak odysłam Cie do grona secjalistów: www.linux.pl
ewentualnie forum na stronie twojej dystrybucji
beavis - 02 Maj 2005 20:50
;] thx ciągle szukam
gol - 02 Maj 2005 22:10
W perlu da sie takie coś łatwo zrobić
Sam Sung - 03 Maj 2005 00:16
W perlu da się takie coś łatwo zrobić
Hehehe... to był post na 100 punktów
Można podać całą listę języków, w których da się to łatwo zrobić (dla kogoś kto je zna) - python, skrypt basha, C, php...
Poszukaj programu tmpwatch - jest on standardowo w dystrybucjach redhat, mandrake itp. RPM'y dołączane do tych dystrybucji instalują od razu skrypt do /etc/cron.X który jest cyklicznie wywoływany przez demony cron i/lub anacron. Wystarczy otworzyć ten skrypt i dopisać sobie katalog, który ma być czyszczony.
Gdybyś miał szukać rpm'a, polecam http://rpm.pbone.net
Pozdrawiam
Darekkk - 03 Maj 2005 10:34
Poczytaj sobie ten temat:
http://www.codecomments.com/archive287-2004-7-232335.html
Tam znajdziesz ciekawe wiadomości na ten temat.
Estarriol - 03 Maj 2005 10:57
#!/bin/sh
dni="14"
katalog="/home/sid/smieci"
maska="*.tmp"
rm `find $katalog -name '$maska' -mtime +$dni`
Nadajesz prawa skryptowi:
$ chmod +x deltemp
I kopiujesz do /etc/cron.weekly
beavis - 03 Maj 2005 17:28
Wielkie dzięki Estarriol...
jeśli chciałbym kasować po opróżnieniu z plików katalogi to dodać rmdir?
Jest jeszcze kolejne pytanie... w innym skrypcie jak podaję jako parametr nazwe pliku o nazwie np.: !!1.txt to niestety $1 nie zwraca tego parametru tylko to co $0. Co zrobić żeby $1 zwracał nazwę !!1.txt?
Estarriol - 03 Maj 2005 17:59
>> jeśli chciałbym kasować po opróżnieniu z plików katalogi to dodać rmdir?
albo można dać rm z opcją -rf
Tylko uwaga:
Jeśli do polecenia "rm -rf" dodasz argument "/" będąc rootem to wywalisz wszystko co masz na zamontowanych systemach plików!
Więc trzeba uważać
beavis - 03 Maj 2005 18:29
rozumiem... ale w skrypcie wklepię na stałe ścieżkę więc chyba nic nie powinno się stać...??? i jak powinno się dołożyć ten parametr?
poza tym... nie kasuje mi plików zaczynających się od "." - żadnych wykonywalnych
Estarriol - 04 Maj 2005 12:23
rozumiem... ale w skrypcie wklepię na stałe ścieżkę więc chyba nic nie powinno się stać...??? i jak powinno się dołożyć ten parametr?
Nie powinno nic się stać ale wolałem ostrzec, żeby wpadki nie było
A żeby wykasować cały katalog to piszesz:
rm -rf /sciezka/do/katalogu
beavis - 05 Maj 2005 15:27
no tak jak to wpisze to dobrze ale jak w skrypcie zrobić żeby widziałparametr -rf?? bo jak normalnie dopisze to niestety nie dziala a jak wpisze komende w bashu to dziala