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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2018-02-01 21:49:59

  paladyn - Użytkownik

paladyn
Użytkownik
Zarejestrowany: 2010-11-02

Skrypt usuwający najstarszy katalog

Witajcie, borykam się z problemem stworzenia skryptu, który usuwał by najstarszy katalog.
W internecie znalazłem coś takiego:

Kod:

rm -r `find -printf "%T@ %P\n" | sort -n | head -1 | cut -d' ' -f2-`

Polecenie działa bardzo dobrze, ale muszę być ścieżkę wyżej od katalogu, który chce usunąć, natomiast ja potrzebuje przekazać ścieżkę do katalogu bezpośrednio w poleceniu. Próbowałem dopisywać na początku,środku czy końcu daje mierny efekt. Czy ktoś pracował nad czymś podobnym ?

Dziękuje za pomoc.

Offline

 

#2  2018-02-01 22:08:20

  arecki - Użytkownik

arecki
Użytkownik
Skąd: 44 Bronson Lane Hensonville
Zarejestrowany: 2016-03-03

Re: Skrypt usuwający najstarszy katalog

No to "poinstruuj" find aby szukał pod określoną ścieżką.

Offline

 

#3  2018-02-01 22:13:21

  paladyn - Użytkownik

paladyn
Użytkownik
Zarejestrowany: 2010-11-02

Re: Skrypt usuwający najstarszy katalog

Pytanie tylko gdzie ją podać ? Polecenie tego typu nie działa

Kod:

rm -r `find /media/dysk/katalog/ -printf "%T@ %P\n" | sort -n | head -1 | cut -d' ' -f2-`

Offline

 

#4  2018-02-01 22:21:33

  arecki - Użytkownik

arecki
Użytkownik
Skąd: 44 Bronson Lane Hensonville
Zarejestrowany: 2016-03-03

Re: Skrypt usuwający najstarszy katalog

SOA #1

Offline

 

#5  2018-02-02 18:24:31

  paladyn - Użytkownik

paladyn
Użytkownik
Zarejestrowany: 2010-11-02

Re: Skrypt usuwający najstarszy katalog

Co to znaczy SOA #1 ?

Offline

 

#6  2018-02-02 19:50:59

  sir_lucjan - Kierowca Bombowca

sir_lucjan
Kierowca Bombowca
Skąd: /home/sir_lucjan
Zarejestrowany: 2010-05-20
Serwis

Re: Skrypt usuwający najstarszy katalog

SOA#1 --> Standardowa Odpowiedź Administratora nr 1: U mnie działa.


Dell Inspiron 15-3542 (3542-2538) || Linux Register User: #536661
                                         Arch Linux

Offline

 

#7  2018-02-02 23:22:07

  lis6502 - Łowca lamerów

lis6502
Łowca lamerów
Skąd: Stalinogród
Zarejestrowany: 2008-12-04

Re: Skrypt usuwający najstarszy katalog

paladyn, nie wiem jak bardzo jesteś zaawansowany, niemniej wszelkie tego typu zabawy prowadź na "rozbrojonej" wersji

Kod:

rm -r `find /media/dysk/katalog/ -printf "%T@ %P\n" | sort -n | head -1 | cut -d' ' -f2-`

^źle

Kod:

find /media/dysk/katalog/ -printf "%T@ %P\n" | sort -n | head -1 | cut -d' ' -f2-

^ o całe niebo lepiej ;)
i jak druga wersja zwróci Ci oczekiwany wynink to dopiero wtedy puścić rm -r na wyniku.

Offline

 

#8  2018-02-03 19:51:01

  paladyn - Użytkownik

paladyn
Użytkownik
Zarejestrowany: 2010-11-02

Re: Skrypt usuwający najstarszy katalog

lis6502

Faktycznie polecenie

Kod:

find /media/dysk/katalog/ -printf "%T@ %P\n" | sort -n | head -1 | cut -d' ' -f2-

działa prawidłowo. Nie mam pojęcia dlaczego wcześniej metodą prób i błędów nie doszedłem do tego.

Dodanie rm -r przed polecenie skutkuje informacją, że nie ma takiego pliku ani katalogu. Katalog który trzeba usunąć to 2018-02-03 w konsola zwraca coś takiego:


Kod:

rm: nie można usunąć '2018-02-03': Nie ma takiego pliku ani katalogu

Jak dodałem ścieżkę do rm to usunęło kompletnie wszystko spod tej ścieżki czyli kompletnie olało to co zwraca find

Dało by się to jakoś ulepszyć ?

Jeśli chodzi o moje umiejętności programowania w Bash to praktycznie zerowe.


Dzięki za pomoc

Edit:

Ok chyba już wiem co z tym rm było nie tak.

Kod:

rm -r /media/dysk/katalog/[tutaj była spacja]`find /media/dysk/katalog/ -printf "%T@ %P\n" | sort -n | head -1 | cut -d' ' -f2-`

Po pierwszych testach wygląda, że działa prawidłowo aczkolwiek gdy katalog jest pusty to przy ponownym uruchomieniu polecenia zostaje usunięty.

Ostatnio edytowany przez paladyn (2018-02-03 20:30:47)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)