Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
#!/bin/bash
data=`date +%c`
echo "Raport automatycznego czyszczenia serwera ftp z $data" >> /home/log.txt
for p in `find /home/ftp -type f -mtime +7`; do
cp "$p" /backup
rm "$p"
echo "Usunieto plik: "$p"" >> /home/log.txt
done
mam sobie takie male swinstwo i nie moge znalesc w manualu find jak zrobic aby w tym przeszukiwanym latalogu /home/ftp nie przeszukiwal katalogu np. xxx
wie ktos moze?:>
znalazlem cos takiego jak -prune ale nie wiem jak to zastosowac.. wyrzuca mi blad skladni.. :(
edit:
poradzilem sobie..
#!/bin/bash
data=`date +%c`
echo "Raport automatycznego czyszczenia serwera ftp z $data" >> /home/log.txt
for p in `find '/home/ftp' '/home/ftp/dupa' -prune -type f -mtime +7`; do
cp "$p" /backup
rm "$p"
echo "Usunieto plik: "$p"" >> /home/log.txt
done
tylko ze teraz pomija mi wszystkie katalogi :(
Offline
ja bym to zrobil
find /home/ftp -type f -mtime +7 ! -path '/home/ftp/xxx/*'
powinno dzialac
Offline
ja bym to zrobil
Kod:
find /home/ftp -type f -mtime +7 ! -path '/home/ftp/xxx/*'powinno dzialac
zadzialalo.. nie wiem czemu w wypadku podania -path './home/ftp/xxx/' -prune
nie usuwal zadnych plikow..
dzieki za pomoc :)
Offline
Mam jeszcze jeden problem.. mianowicie moj skrypt nie dziala za bardzo z katalogami i plikami, ktore w swojej nazwie maja spacje...
np jesli mamy katalog dupa to wszystko jest ok
mianowicie jesli jest katalog "dupa blada"
to wyswietla nam ze nie moze odnalesc katalogu dupa :(
tak samo z plikami :(
Offline
zrobilbym zamiast
for p in `find /home/ftp -type f -mtime +7`; do
cos takiego;
find /home/ftp -type f -mtime +7 | while read p; do
z for chyba tez daloby sie jakos wymyslec ale nie mam pomyslu ...
Offline
no a czym moze byc spowodowany problem z katalogami majacymi spacje w nazwie? :(
bo petla to mi smiga jakos..
Offline
tym ze petla for codzi po wyrazach a to co zwraca find nie ma zabezpieczonych spacji ... natomiast petla while bedzie chodzila po liniach a mamy 1 plik na linie ...
Offline
while pomoglo.. dzieki wielkie i sorry za watpliwosci :)
wiecie moze jak zrobic petle aby usuwalo katalogi puste rozne od pub i incoming od srodka tak dlugo az nie bedzie takich katalogow?
bo obecnie np jesli mam katalog /dupek/dupa i dupek zawiera tylko dupa to usuwa sam katalog dupa bez dupka bo formalnie w dupku jets dupa i nie jest on pusty.. mam jak narazie zrobione 4 krotne przeszukiwanie folderow ale wolalbym bardziej po bozemu :P
Offline