Nowe posty

Autor Wątek: bash! 2 zadania  (Przeczytany 6162 razy)

popiolkas

  • Gość
bash! 2 zadania
« dnia: 2009-04-15, 13:19:10 »
witam, mam do zrobienia 2 zadanka w bashu, ale cos mi nie ida:P podobne sa przynajmniej:)

1) Napisz skrypt ktory w aktualnym katalogu wybierze dwa pliki o najblizszym sobie rozmiarze.

2) Napisz skrypt, ktory w drzewie podkatalogow aktualnego katalogu wybierze dwa pliki o najblizszym sobie rozmiarze

z gory dzieki za pomoc:) pozdr

chmooreck

  • Gość
bash! 2 zadania
« Odpowiedź #1 dnia: 2009-04-15, 13:22:01 »
Nie ma tak lekko... najpierw się wykaż, że uważałeś na zajęciach i chcesz się tego nauczyć. Najlepiej pisząc do czego już doszedłeś samemu.

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #2 dnia: 2009-04-15, 15:32:33 »
na zajeciach bylem, ale niestety nikt ich nie prowadzi tylko mamy zadania do robienia:] po prostu potrzebuje 2 zadanek bo mi pomoga w zaliczeniu przedmiotu, bash nie jest moja dziedzina i jestem z tego kiepski:) dlatego poprosilem o pomoc:)

chmooreck

  • Gość
bash! 2 zadania
« Odpowiedź #3 dnia: 2009-04-15, 15:50:25 »
No to masz problem... nie sadzę, żeby ktoś ci tutaj napisał gotowca. Było robić zadanka na zajęciach i korzystać w tym czasie z osoby prowadzącej.

Bez Twojej inwencji się nie obejdzie.

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #4 dnia: 2009-04-15, 20:05:22 »
no wiec myslalem, i wymyslilem tyle zeby wyswietlic wszystkie pliki, posortowac w/g rozmiarow i potem sprawdzac odejmujac ktora roznica jest najmniejsza

arctgx

  • Gość
bash! 2 zadania
« Odpowiedź #5 dnia: 2009-04-15, 20:08:20 »
Wklej zatem efekty swoich prób. Jedna rzecz to algorytm, druga to wykonanie go w bashu. Nie licz na gotowca.

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #6 dnia: 2009-04-16, 21:11:58 »
no dobra, to za duzo nie wyskrobalem...

ls -l -p -S | grep -v "/"  

na razie tyle, tak mi sie wydaje, ls -l wyswietla rzeczy w folderze, -p dodaje "/" do folderow, -S posortuje... potem grepem wytniemy foldery i zostana same posortowane pliki...

arctgx

  • Gość
bash! 2 zadania
« Odpowiedź #7 dnia: 2009-04-16, 21:43:22 »
Katalogi przy opcji -l mają literę d na początku linii.

Żebyś nie tracił czasu na samego ls, podpowiem Ci od razu: skorzystaj z polecenia find. Pierwsze zadanie powinno mieć warunek więcej od drugiego. Podręcznik pod poleceniem man find posiada polską wersję - trochę nieaktualną, ale zawierającą, co Ci potrzebne.

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #8 dnia: 2009-04-16, 21:53:55 »
jaki podrecznik? bo nie za bardzo wiem o czym mowimy:P kurcze, jutro to zadanie bede mial na kolosie i musze je dzis zrobic ;/

Offline Arkadiusz Bednarczyk

  • Linux.pl
  • Administrator
  • Guru
  • *****
  • Wiadomości: 654
    • Zobacz profil
    • Linux.pl
bash! 2 zadania
« Odpowiedź #9 dnia: 2009-04-16, 22:09:35 »
Podręcznik standardowo dostępny w Linuksie, polecenie: man find
--
pozdrawiam
Arkadiusz Bednarczyk
email/jabber: arek@linux.pl

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #10 dnia: 2009-04-16, 22:14:20 »
cos przeczytalem, ale ten man find to tylko do szukania plikow w hierarchi katalogowej (z tego co czytam)... a pliki to ja juz sobie posortowalem, wyswietlilem... tylko teraz musze znalezc dwa ktorych rozmiar jest najblizszy sobie.. i nie wiem jak to zrobic;/ a musze zeby zailczyc przedmiot;(

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #11 dnia: 2009-04-16, 22:20:39 »
%b     Rozmiar pliku w 512-bajtowych  blokach  (zaokrąglanych  w górę). jescze takie cos znalazlem, ale nie wiem czy to sie przyda

arctgx

  • Gość
bash! 2 zadania
« Odpowiedź #12 dnia: 2009-04-16, 23:02:43 »
To Twoje zadanie opanować polecenie, a nie tylko odwalić pojedyncze zadanko. To raptem kilka stron ekranowych, a Tobie tylko trzeba przeczytać to co potrzebne.

Wystarczy że za pomocą printf podasz rozmiar w bajtach i nazwę (poszukaj przykładów w sieci, również tu na forum, nie ma lekko). Do wyróżnienia że listujesz tylko zwykłe pliki, też masz parametr. Warunek dla pktu 1 załatwia też 1 parametr (jaki?).

Do sortowania używasz polecenia sort.

popiolkas

  • Gość
bash! 2 zadania
« Odpowiedź #13 dnia: 2009-04-16, 23:04:52 »
sory ale za duzo nie rozumiem z tego co Ty do mnie mowisz;)