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  2010-04-12 12:00:48

  winnetou - złodziej wirków ]:->

winnetou
złodziej wirków ]:->
Skąd: Jasło/Rzeszów kiedyś Gdańs
Zarejestrowany: 2008-03-31
Serwis

Dziwny skrypcik...

Heja mam takie zadanie:

Proszę napisać skrypt w powłoce ksh,
który dla podanej partycji wyświetli 10 użytkowników,
którzy zajmują najwięcej miejsca na partycji[/quote]
No i zaciąłem się w jednym miejscu... Jak sprawdzić wszystkie pliki z danej partycji? Rozmiary to się ładnie policzy ale z tą partycją to mnie zastrzelili...

Wyobraźmy sobie taką sytuację (najprostszą z możliwych komplikacji ;)) :
sda1 --> /
sda2 --> swap
sda3 --> /home
sda4 -->/home/jakiś_dziwny_katalog


Teraz do skryptu jako parametr podaje sda3. Więc przeszukiwanie poleci rekurencyjnie w dół ale łącznie z /home/jakis_dziwny_katalog a ten powinien zostać pominięty... Jakieś pomysły sugestie??


LRU: #472938
[b]napisz do mnie:[/b] ola@mojmail.eu
[url=http://valhalla.org.pl]Hołmpejdż[/url] | [url=http://valhalla.org.pl/foto]Galerie[/url] | [url=http://valhalla.org.pl/tech]"Twórczość"[/url] || [url=http://img.munn.in]Free Image Hosting[/url]

Offline

 

#2  2010-04-12 12:33:20

  Contravene - Użytkownik

Contravene
Użytkownik
Zarejestrowany: 2006-08-07

Re: Dziwny skrypcik...

Spróbuj parametr -xdev w find.

Offline

 

#3  2010-04-12 12:47:02

  winnetou - złodziej wirków ]:->

winnetou
złodziej wirków ]:->
Skąd: Jasło/Rzeszów kiedyś Gdańs
Zarejestrowany: 2008-03-31
Serwis

Re: Dziwny skrypcik...

[b]Contravene[/b] gracias, czegoś podobnego poszukiwałem...


LRU: #472938
[b]napisz do mnie:[/b] ola@mojmail.eu
[url=http://valhalla.org.pl]Hołmpejdż[/url] | [url=http://valhalla.org.pl/foto]Galerie[/url] | [url=http://valhalla.org.pl/tech]"Twórczość"[/url] || [url=http://img.munn.in]Free Image Hosting[/url]

Offline

 

#4  2010-04-12 12:52:33

  urbinek - Użytkownik

urbinek
Użytkownik
Skąd: Sosnowiec
Zarejestrowany: 2009-10-01
Serwis

Re: Dziwny skrypcik...

sam rozmiar katalogu w obrębie jednej partycji sprawdzisz poleceniem

Kod:

du -shx

a z wy listowaniem to nie wiem za bardzo
pomyśle chyba, ze to wystarcza ?


A w wolnym czasie, robię noże :)
[img]http://nginx.urbinek.eu/_photos/signature.png[/img]

Offline

 

#5  2010-04-12 13:05:05

  winnetou - złodziej wirków ]:->

winnetou
złodziej wirków ]:->
Skąd: Jasło/Rzeszów kiedyś Gdańs
Zarejestrowany: 2008-03-31
Serwis

Re: Dziwny skrypcik...

[b]urbinek[/b] wiem że "du" mi to ładnie posprawdza, ale motyw jest tego typu: Jest sobie katalog /mnt/DYSK i jest tam utworzony katalog 'WSPOLNE" właścicielem katalogu jest root, ale w środku są pliki, janak, staszka i sefana - więc "du" odpada bo poda zbiorczy rozmiar dla katalogu bez uwzględniania UID'ów... Na razie sprawdzam sobie find'a


LRU: #472938
[b]napisz do mnie:[/b] ola@mojmail.eu
[url=http://valhalla.org.pl]Hołmpejdż[/url] | [url=http://valhalla.org.pl/foto]Galerie[/url] | [url=http://valhalla.org.pl/tech]"Twórczość"[/url] || [url=http://img.munn.in]Free Image Hosting[/url]

Offline

 

#6  2010-04-12 13:56:58

  urbinek - Użytkownik

urbinek
Użytkownik
Skąd: Sosnowiec
Zarejestrowany: 2009-10-01
Serwis

Re: Dziwny skrypcik...

teraz nie mam dostępu do shella ale czy przypadkiem

Kod:

du -shx /mnd/DYSK/WSPOLNE/*

nie zwróci listy wszystkich katalogów wraz z pojemnością ?

p.s. mogą być problemy jeśli w nazwie katalogu są spacje


A w wolnym czasie, robię noże :)
[img]http://nginx.urbinek.eu/_photos/signature.png[/img]

Offline

 

#7  2010-04-12 14:06:47

  winnetou - złodziej wirków ]:->

winnetou
złodziej wirków ]:->
Skąd: Jasło/Rzeszów kiedyś Gdańs
Zarejestrowany: 2008-03-31
Serwis

Re: Dziwny skrypcik...

Tak owszem ale nie chodzi o rozmiary poszczególnych katalogów - to by było dziecinnie proste tylko o miejsce jakie zajmują pliki 10 uzytkoników... W jednym katalogu mogą być pliki kilku userów i du w tym momencie wymięka. Wydaje mi się że jedyny sensowny sposób to listing wszystkiego na danej partycji, wyciąganie rozmiaru pliku, uid i sumowanie po uidach a na sam koniec wyciągnięcie 10 uidów z największym rozmiarem plików. Problem miałem tylko ze schodzeniem na inne partycje przy zagnieżdżonych montowaniach, ale dzięki [b]Contravene[/b] wszystko stało się jaśniejsze ;)


LRU: #472938
[b]napisz do mnie:[/b] ola@mojmail.eu
[url=http://valhalla.org.pl]Hołmpejdż[/url] | [url=http://valhalla.org.pl/foto]Galerie[/url] | [url=http://valhalla.org.pl/tech]"Twórczość"[/url] || [url=http://img.munn.in]Free Image Hosting[/url]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.010 seconds, 10 queries executed ]

Informacje debugowania

Time (s) Query
0.00013 SET CHARSET latin2
0.00007 SET NAMES latin2
0.00116 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.222.240.21' WHERE u.id=1
0.00092 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.222.240.21', 1714661524)
0.00043 SELECT * FROM punbb_online WHERE logged<1714661224
0.00074 DELETE FROM punbb_online WHERE ident='3.144.161.116'
0.00113 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=16598 AND t.moved_to IS NULL
0.00007 SELECT search_for, replace_with FROM punbb_censoring
0.00187 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=16598 ORDER BY p.id LIMIT 0,25
0.00129 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=16598
Total query time: 0.00781 s