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/.
Strony: 1
Witam
Taki przypadek. Jest sobie kilkanaście katalogów, w każdym z tych katalogów znajduje się podkatalog .kosz (aby userzy mieli jeszcze szansę odzyskać dane).
Jak szybko załatwić usuwanie danych z tego katalogu (.kosz). tak myślę nad rozwiązaniem i normalnie zaćma.
Będę wdzięczny za informacje
Pozdrawiam
Offline
rm */.kosz/*
jeśli chcesz mieć większą kontrolę
for DIR in A B C D; do rm ${DIR}/.kosz/*; done
Ostatnio edytowany przez azhag (2011-01-25 08:38:49)
Offline
find . -iname '.kosz' -and -type d |while read line; do echo rm -rf $(readlink -f "$line")/*; done
Offline
Witam
Dziękuję za odpowiedź, przetestuje w wolnej chwili. jednak mam jeszcze jedno pytanie
Jest sobie katalog /home/tom/dane (znajdują się w nim katalogi z danymi) oraz katalog /opt/arch/1
Chciałbym aby kopiować pliki, których czas modyfikacji jest mniejszy niż 1 dzień i robię to poleceniem
find /home/tom/dane -ctime -1 -exec cp {} /opt/arch1/ \;
Dane się kopiują jednak wszystkie w jednym katalogu, a chciałbym aby kopiowała się cała struktura katalogów plus pliki w nich zawarte
próbowałem
cp -r
oraz
cp -R
Jednak w pierwszym przypadku owszem kopiują się dane z katalogami, jednak kopiują się również wszystkie pliki powtórnie do katalogu głównego. z tego co wyczytałem z mana jednak tych opcji nie powinno się używać
Będę wdzięczny za podpowiedzi
Pozdrawiam
Ostatnio edytowany przez rulezdc (2011-01-26 14:54:20)
Offline
Jeszcze -maxdepth 1 w find.
Offline
Tak nie do końca, bo przy wykonaniu
find /home/tom/dane -maxdepth 1 -ctime -1 -exec cp {} /opt/arch1/ \;
Mam błąd:
Pominięto katalog 1 ... itd
Kopiuje tylko pliki z głównego katalogu a podkatalogi pomija
Pozdrawiam
Offline
bo zapomniałeś o -r w cp
Offline
witam
właśnie sprawdziłem działanie
i działa następująco;
mam w katalogu /home/tom/dane katalogi one, two, three
i po komendzie
find /home/tom/dane -maxdepth 1 -ctime -1 -exec cp -r {} /opt/arch1/ \;
w katalogu /opt/arch1 mam następujące katalogi
one two three oraz katalog dane
teraz ladnie kopiuje katalogi ale kopiuje rowniez katalog glowny z wszystkimi plikami
powalcze dziś nad tym tematem
mozę cos znajdę
pozdrawiam i narazie dziękuję za pomoc
Offline
rulezdc napisał(-a):
teraz ladnie kopiuje katalogi ale kopiuje rowniez katalog glowny
chodzi o to ze kopiuje pliki ktore sa w /home/tom/dane/ a Ty tego nie chesz ... powiedz findowi zeby szukal tylko katalogow -> przelacznik -type z odpowiednim argumentem ...
Offline
Ja chce aby kopiował wszystkie dane znajdujące się w katalogu /home/tom/dane/ (czyli podkatalogi i pliki w nich zawarte nie starsze jak jeden dzień). Jednak jak kopiuje według ww komendy to w katalogu /opt/arch mam następującą strukturę:
/opt/arch1 zawiera: /dane /one /two /three
Czyli kopiuje mi zawartość całego katalogu dane 1:1 jak również podkatalogi w nim się znajdujące z plikami nie starszymi jak 1 dzień
Offline
Raczej chodzi o to, że wśród wyników find znajduje się również katalog . w szukanej ścieżce (czyli ona sama).
Można to obejść:
azhag@laptop /tmp % find /tmp/a -maxdepth 1 -type d /tmp/a /tmp/a/c /tmp/a/d /tmp/a/b azhag@laptop /tmp % find /tmp/a -maxdepth 1 -type d -printf "%P\n" c d b azhag@laptop /tmp % find /tmp/a -maxdepth 1 -type d ! -path "/tmp/a" /tmp/a/c /tmp/a/d /tmp/a/b
Offline
Strony: 1