#####
##### reseni domacich ukolu
#####
# 2) '"''"
echo "'"'"'"''"'"'
echo \'\"\'\'\"
echo ';`echo -e "\n"`'
# 3) 2 prazdne radky podle POSIX
# pouceni: echo -e '\n' neni standartni
echo '
'
printf '\n\n'

#####
##### Cviceni:
#####

# priklady hodne inspirovane cviky Tomase Popa

#
# /etc/passwd, cut
#

# pozor
cat /etc/passwd 
# je v labu (ms lab-specific)
getent passwd 

# vyberte sloupec jmena z /etc/passwd
# napoveda: cut
getent passwd | cut -f 5 -d :

# kolik je lidi se jmenem Tomas? (O grepu vic pozdeji, o regexpech taky)
# napoveda: grep
# je spravne tohle?
getent passwd | cut -f 5 -d : | grep Tomas | wc -l
# neni, co treba "Ferdinand Tomášek", tzn:
getent passwd | cut -f 5 -d : | cut -f 1 -d ' ' | grep Tomas | wc -l

# Adam a Eva
# kolik je v getent passwd lidi se jmenem Adam nebo Eva?
getent passwd | cut -f 5 -d : | cut -f 1 -d ' ' | grep Adam > jmena.tmp
getent passwd | cut -f 5 -d : | cut -f 1 -d ' ' | grep Eva >> jmena.tmp
cat jmena.tmp | wc -l 
rm jmena.tmp 

# kolik je zen (konci na ova)
getent passwd | cut -f 5 -d : | cut -f 2 -d ' ' | grep 'ová$' | wc -l

#
# join
#

wget http://j2m.cz/~jm/vyuka/unix2016/id2stat
wget http://j2m.cz/~jm/vyuka/unix2016/id2mesto
wget http://j2m.cz/~jm/vyuka/unix2016/prezident2id

# soubory maji jednoduchy format, kde vsechna id odpovidaji id statu ze souboru id2stat 
# tzn, id v souborech id2mesto a prezident2id jsou FOREIGN KEY souboru id2stat

# v kolika statech je praha
cat id2mesto | grep praha | wc -l

# jake to jsou ?
join id2stat id2mesto | grep 'praha$'  | cut -d' ' -f 2

# kdo je prezident v zemi kde je bratislava ?
join id2stat id2mesto | grep 'bratislava$' | join -2 2 - prezident2id  | cut -d ' ' -f 4

#
# romeo a julie 
# napoveda z tabule: tr, sort, uniq
#
wget http://j2m.cz/~jm/vyuka/unix2016/romeo_and_juliet 
# UKOL: jakych 20 slov je nejpouzivanejsich a kolikrat?

# problem 1): chceme data pretransformovat v nejaky jednoduchy format
#  treba: co slovo (a-z) to radek
# napoveda: vse pomoci tr

# podproblem 1.1) mam slova ve vetach
cat romeo_and_juliet  | tr ' ' '\n'
# podproblem 1.2) PRINCE == prince
# podproblem 1.3) co ostatni znaky (krome a-z)

# problem 2): jak to setridit a spocitat?
# napoveda: sort a uniq
