Forum » Programiranje » Domaca Naloga OS
Domaca Naloga OS
comgen ::
Pozdravljeni!
Rabim pomoc pri domaci nalogi, pri predmetu operacijski sistemi.
Napišite program v lupini, ki izpiše, kolikokrat ter koliko časa (skupno) so bili uporabniki v nekem času prijavljeni na sistemu. Čas podamo z dvema datumoma kot argumenta ukazne vrstice.
Rabim pomoc pri domaci nalogi, pri predmetu operacijski sistemi.
Napišite program v lupini, ki izpiše, kolikokrat ter koliko časa (skupno) so bili uporabniki v nekem času prijavljeni na sistemu. Čas podamo z dvema datumoma kot argumenta ukazne vrstice.
- spremenil: comgen ()
b ::
Malo ti bom pomagal... če sta dva logina istočasno, se šteje, kot da je samo eden. Se pravi login danes od 01:00 do 02:00 in drugi login od 01:30 do 02:30 pomeni 1x login 1 uro in trideset minut :) Tale naloga je precej nedefinirano napisana in če ne pogledaš vhodnih podatkov in tega kakšen bi moral biti izhod, ne moreš pravilno rešit :)
TitanX ::
jaz imam podoben problem... in sicer izpis dobim taksen:
bojank 100
bojank 166
borutb 48
borutb 227
borutb 27714
borutb 27773
borutb 28189
lukas 59
lukas 118
peterp 182
peterp 1542
peterp 2561
kako bi lahko to ce dam preko pipe naprej izloco samo zadnje vrstice od imen? tako da bi dobil to:
bojank 166
borutb 28189
lukas 118
peterp 2561
zgornji problem sem reso z AWK ukazom, ampak me vseeno zanima alternativa kako bi se dalo to rest se? probal sem neka z associative arrays ampak je to kar mi je ratalo naredit...torej nekak mi ni hotlo zmetat isto ime pod isti index...
ce ima kdo kaksen predlog hint mogoce example se priporocam
lp
bojank 100
bojank 166
borutb 48
borutb 227
borutb 27714
borutb 27773
borutb 28189
lukas 59
lukas 118
peterp 182
peterp 1542
peterp 2561
kako bi lahko to ce dam preko pipe naprej izloco samo zadnje vrstice od imen? tako da bi dobil to:
bojank 166
borutb 28189
lukas 118
peterp 2561
zgornji problem sem reso z AWK ukazom, ampak me vseeno zanima alternativa kako bi se dalo to rest se? probal sem neka z associative arrays ampak je to kar mi je ratalo naredit...torej nekak mi ni hotlo zmetat isto ime pod isti index...
ce ima kdo kaksen predlog hint mogoce example se priporocam
lp
TitanX ::
zdej zaenkrat, bi rad obdrzal kodo kot skrivnost in jo lahko pokazem jutri...predstavlajte si da:
while read line; do
#tukaj notri se zgodi koda, ki prikaze zgoraj omenjeni prikaz!
#bojank 100
#bojank 166
#borutb 48
#borutb 227
#borutb 27714
#borutb 27773
#borutb 28189
#lukas 59
#lukas 118
#peterp 182
#peterp 1542
#peterp 2561
done | while read line; do
#tukaj bi rad tiste stolpce/vrstice ki jih preko pipe posljem naprej obdelal da bi mi samo najvecje #minute(drugi stolpec) vzelo in jih izpisalo z echo $line
done
lp
while read line; do
#tukaj notri se zgodi koda, ki prikaze zgoraj omenjeni prikaz!
#bojank 100
#bojank 166
#borutb 48
#borutb 227
#borutb 27714
#borutb 27773
#borutb 28189
#lukas 59
#lukas 118
#peterp 182
#peterp 1542
#peterp 2561
done | while read line; do
#tukaj bi rad tiste stolpce/vrstice ki jih preko pipe posljem naprej obdelal da bi mi samo najvecje #minute(drugi stolpec) vzelo in jih izpisalo z echo $line
done
lp
b ::
To kar ti delaš, ni OK. Najprej moraš vse seje istega uporabnika, ki se prekrivajo, združit skupaj. Brez tega ne boš dobil pravega rezultata.
TitanX ::
recimo da sem to ze naredil in da je tisto rezultat ki je skoraj ze na koncu in imam ime uporabnika in ZE zracunane minute? edini problem je to ker mi echo-a se vmesne ki jih potem ne znam izlocit ven...lepo prosim ce mi svetujete kaksno resitev za tisti zgoraj opisan problem(v mojem prejsnem postu)
drugace pa kot sem ze rekel sem napisal program ki deluje 100% in je dokaj hiter, ampak me zanima kako zgledajo se mogoce kaksne druge stvari ki naredijo isto
drugace pa kot sem ze rekel sem napisal program ki deluje 100% in je dokaj hiter, ampak me zanima kako zgledajo se mogoce kaksne druge stvari ki naredijo isto
b ::
Namesto izpisovanja shrani vrednost v hash (associative array).
declare -A userji
${userji[$user]}=xxx
for user in ${!userji[*]}: do
echo "$user ${userji[$user]}
done
Sam ti manjka še število loginov... Kako boš to tukaj rešil pa nimam neke pametne ideje.
declare -A userji
${userji[$user]}=xxx
for user in ${!userji[*]}: do
echo "$user ${userji[$user]}
done
Sam ti manjka še število loginov... Kako boš to tukaj rešil pa nimam neke pametne ideje.
rdecakapica ::
Yo
Zakaj se men spremenljivka user spremeni v integer?
Zakaj se men spremenljivka user spremeni v integer?
Zgodovina sprememb…
- spremenilo: rdecakapica ()
b ::
v bournovem shellu so vse spremenljivke stringi. Ne more se ti spremenit v int, ker to ne obstaja :)
Pri uporabi test (oz. [) pa lahko z izbiro operatorja vplivaš na to, kako se vrednost spremenljivke interpretira. -eq, -ne, -lt, -gt,.... primerjajo vrednosti kot integer, =, !=, ... pa kot string.
Pri uporabi test (oz. [) pa lahko z izbiro operatorja vplivaš na to, kako se vrednost spremenljivke interpretira. -eq, -ne, -lt, -gt,.... primerjajo vrednosti kot integer, =, !=, ... pa kot string.
Zgodovina sprememb…
- spremenilo: b ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Microsoftov giveaway knjigOddelek: Programiranje | 2621 (1459) | OvCa77 |
» | bash skripta ki bere txtOddelek: Programiranje | 1099 (829) | Mike0 |
» | [bash] štetje vrsticOddelek: Programiranje | 830 (727) | Brane2 |
» | Regexp, grep, awk problem?Oddelek: Programiranje | 1692 (1414) | Brane2 |
» | Skripte (strani: 1 2 )Oddelek: Programiranje | 8701 (6564) | Microsoft |