Tehtävä 3.2 Komentorivityökaluja GREP,SED & AWK

 Tehtävä 3.2 Komentorivityökaluja GREP,SED & AWK

 1. Grep

A)  

[0-9]{6}.[0-9A-Z]{3}[0-9A-Za-z]{1}






 

B)  

[A-Za-z].+@[A-Za-z]+.[A-Za-z]{2,3}






C) 

 ((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)




Tämä ottaa huomioon ei rangella olevat IP:t kuten 256.256.256.256

D)

egrep "lääkäri|poliisi|asianajaja" pg14152.txt



 

 

 

 

 

E)

egrep -w "Tohtori Jekyll" pg14152.txt | wc -w

wc -w komento chekkaamassa meneekö oikein ja tietysti tässä esimerkissä otin vain huomioon "Tohtori Jekyll" enkä "tohtori jekyll" tai muita variaatioita.



F)

egrep -wn "elämä|kuolema|ei" pg14152.txt




 

 

2. AWK

A)  

awk -F ";" 'NR>1{print $1 " " $4 }' data.csv | awk -F " " '{print $1 " " "("$4")" }'






B)

awk -F ";" 'NR>1{print $3 "\t" $1 "\t" $2 }' data.csv | sort

Sorttaamisen tekee helpoksi kun maa on ensimmäisenä.



 

 

 

 

D)

awk -F, '{kylla+=$2}{ei+=$3}{kaikki=kylla+ei} END{print "Kyllä vastauksia " kylla " kpl eli "kylla/kaikki*100 " prosenttia ja ei vastauksia " ei " kpl eli " ei/kaikki*100 " prosenttia."}' tulokset.csv


 

E)  

Ensiksi tallentaa sivuston nimipaiva.html muotoon koneelle ja sen jälkeen etsii grepillä rivin ja karsii siitä turhat pois awkilla.  

awk '/Tänään/' nimipaiva.html | awk -F "<br/>" '{print $2 $3 $4 $5}'



3. SED 

A)  sed s/lääkäri/puoskari/ pg14152.txt | egrep puoskari






B) sed /maailma/d pg14152.txt



C) sed "s/[^ ]*/\ kikkara \ kakkara \ motti /g" pg14152.txt




D) sed 's/Enfield/"&"/g' pg14152.txt | egrep "Enfield"







4. Tekstitiedostojen manipulointia

A) paste nimet.txt osoitteet.txt numerot.txt > yhdistetty.txt


 

 

 

B)  Pg14152.txt tiedostossa on 3381 riviä, jotka jaetaan split komennon oletuksena 1000 rivin tiedostoihin eli tulee 4 tiedostoa joissa on rivejä 1000,100,1000 ja 381.








C) split -l 500 pg14152.txt





Joutuu käyttämään -l - valitsinta.

D) sed '200,300d' pg14152.txt | wc -l




Comments

Popular posts from this blog

Tehtävä 5.3 Salasanojen murtaminen

Tehtävä 2.3 Vaihtoehtoisia asennustapoja