You are on page 1of 19

CFGS DAM-DAW PRÀCTICA PT1 ABRIL 2018

UF2/NF1/PT1 Administració des de la línia de


comandes
M01 – SISTEMES INFORMÀTICS
UF2 – Gestió de la informació i de recursos en una xarxa
NF1 – Administració de la informació

NOM ALUMNE: Jaume Vidal Buenafuente

Objectius generals de la pràctica


 Utilitzar la línia de comandes com mètode de comunicació entre l'usuari i el
sistema operatiu.
 Utilitzar la llista d’ordres indicades en la pràctica.
 Conèixer els fonaments de l'administració de sistemes GNU/Linux i Unix en
general.

Desenvolupament de la pràctica
Escriu a sota de cada pregunta l'ordre que correspon a l'acció demanada en la
pregunta i la captura de pantalla corresponent. Les accions s'han de realitzar sobre
l'arxiu adjunt “alumnes_dam_damw.txt”i els resultats s'han de mostrar en pantalla.

per crear l'arxiu amb codificació utf-8:


iconv -f ISO-8859-1 -t UTF-8 alumnes_dam_damw.txt >alumnes_dam_damw.txt

per netejar l'arxiu d'espais en blanc innecesaris:


sed 's/;[ ]*/;/g' alumnes_dam_damw_utf8.txt > alumnes_dam_damw_utf8_clean.txt

1. Mostra l'arxiu sense l'encapçalament


tail -n +2 alumnes_dam_damw.txt

1
2. Mostra les tres primeres línies de l'arxiu
tail -n +2 alumnes_dam_damw.txt | head -3

3. Mostra les quatre últimes línies de l'arxiu


tail -4 alumnes_dam_damw.txt

4. Mostra les línies 12, 13 i 14 de l'arxiu


cat -n alumnes_dam_damw.txt | tail -n +12 | head -3

2
5. Mostra els registres de l'arxiu però només que continguin els camps "1r Cognom", "2n
Cognom" i "Nom”
cut -d ';' -f 2,3,4 alumnes_dam_damw.txt

6. Mostra els registres de l'arxiu classificats pel cam "1r Cognom"


tail -n +2 alumnes_dam_damw.txt | sort -t ';' -k2

3
7. Conta el nombre de línies de l'arxiu
cat alumnes_dam_damw.txt | wc -l

8. Mostra tots els registres de l'arxiu corresponents als alumnes nascuts a


L'Hospitalet
cat alumnes_dam_damw.txt | grep 'Hospitalet'

9. Filtrar les línies que contenen un mateix cognom (el que tu triis)
cat alumnes_dam_damw_utf8.txt | grep 'Garc.a'

4
cat alumnes_dam_damw_utf8.txt | grep -v 'Garc.a'

10. Mostra tots els registres de l'arxiu corresponents als alumnes menors d'edat
nascuts a L'Hospitalet
tail -n +2 alumnes_dam_damw_utf8.txt |awk 'BEGIN{FS=";"}{if ($10<18 &&
$8="Hospitalet"){print $0;}}'

11. Mostra tots els registres de l'arxiu però sense línies repetides
cat alumnes_dam_damw_utf8.txt | sort |uniq

5
12. Mostra el nombre d'alumnes menors d'edat
awk 'BEGIN{FS=";"}{if ($10<18){print $1;}}' alumnes_dam_damw_utf8.txt | wc -l

13. Mostra els alumnes que el seu primer cognom comencen per la lletra “a” o “c”
awk 'BEGIN{FS=";"}{if(match($2,/^[AC]/)){print $0}}' alumnes_dam_damw_utf8.txt

6
14. Mostra els alumnes que el seu primer cognom tenen menys de 8 lletres
tail -n +2 alumnes_dam_damw_utf8.txt |awk 'BEGIN{FS=";"}{if (length($2)<8){print
$0;}}'

15. Mostra els alumnes classificats per la edat


tail -n +2 alumnes_dam_damw_utf8.txt|sort -t ';' -k10

7
16. Mosta tot l'arxiu en majúscules
cat alumnes_dam_damw_utf8_clean.txt | tr [[:lower:]] [[:upper:]]

8
17. Mosta tot l'arxiu en minúscules
cat alumnes_dam_damw_utf8_clean.txt | tr [[:upper:]] [[:lower:]]

9
18. Mosta tot l'arxiu sense accents
iconv -f utf-8 -t ascii//TRANSLIT alumnes_dam_damw_utf8_clean.txt

1
19. Mostra tots els registres de l'arxiu en el següent orde:
"1r Cognom";"2n Cognom";"Nom;"Data naixement";"Edat";"Telefon";"Ciutat";"CP"; Grup"
awk 'BEGIN{FS=";"}{print $2,$3,$4,$6,substr($10,0,length($10)),$7,$8,$9,$5}'
alumnes_dam_damw_utf8_clean.txt

1
20. Canvia el camp delimitador de l'arxiu “;” per “:”
cat alumnes_dam_damw_utf8_clean.txt | tr [";"] [":"]

1
21. Canvia el camp delimitador de l'arxiu “;” per “tabulador”
cat alumnes_dam_damw_utf8_clean.txt | tr [";"] ["\t"]

22. Assigna a cada alumne un login i un password. S'ha de mostrar els camps "1r
Cognom";"2n Cognom";"Nom; "login";"password”. El login està format per la
primera lletra del nom + el primer cognom. La "password” és una paraula de 8
caràcters l'atzar (veure la comande random)
tail -n +2 alumnes_dam_damw_utf8_clean.txt| awk 'BEGIN{FS=";";OFS=";";print
"1r Cognom;2n Cognom;Nom;login;password";}
{login=substr($4,1,1)$2;login=tolower(login);str_generator = "tr -dc '[:alnum:]'
</dev/urandom | head -c 8"; str_generator | getline password; close(str_generator);
print $2,$3,$4,login,password;}'

^ eso fue algo entretenido.

1
23. Substitueix en l'arxiu totes les “a” per “@”
cat alumnes_dam_damw_utf8_clean.txt | sed 's/[aAáà]/@/g'

1
24. Treu tots els espais en blanc
cat alumnes_dam_damw_utf8_clean.txt | sed 's/ //g'

1
25. Canvia el format de la data de naixement, de «22/03/1980» a «22-03-1980» en
tots el registres de l’arxiu
cat alumnes_dam_damw_utf8_clean.txt | sed 's/\//-/g'

1
26. Canvia el cognom Garcia per Gracia en l’arxiu
cat alumnes_dam_damw_utf8_clean.txt | sed 's/Garcia/Gracia/g'

1
27. Afegeix el camp «nacionalitat» a tots el registres del arxiu, amb el contingut
europeu
tail -n +2 alumnes_dam_damw_utf8_clean.txt | awk 'BEGIN{FS=";";OFS=";";print
"\"DNI\";\"1r Cognom\";\"2n Cognom\";\"Nom\";\"Grup\";\"Data
naixement\";\"Telèfon\";\"Ciutat\";\"CP\";\"Edat\";\"Nacionalitat\"";}
{nacionalitat=";europeu";print substr($0,0,length($0)) nacionalitat}'

me llevo horas encontrar que al coger el ultimo campo tambien cogia el \n...adv

1
28. Filtrar les línies que contenen un mateix cognom (el que tu triïs)
exercici 9 repetit??

29. Quantes línies, paraules i caràcters conté l'arxiu en aquest moment


echo 'linies: '`cat alumnes_dam_damw_utf8_clean.txt |wc -l`&&echo 'paraules: '
`cat alumnes_dam_damw_utf8_clean.txt|wc -w`&&echo 'caracters: ' `cat
alumnes_dam_damw_utf8_clean.txt|wc -m`

You might also like