Differences

This shows you the differences between two versions of the page.

Link to this comparison view

op_kommandon4 [2019-09-20 10:23]
Joakim Forsgren
op_kommandon4 [2022-07-18 13:20]
Line 1: Line 1:
-====== Kommandon 4 ====== 
-Här vill jag att ni sparar era svar i en textfil som ni **noga håller koll på**, jag kommer att vilja se vilka kommandon ni har använt.\\ 
  
-I många unix-system så finns en fil som håller ordning på alla användare (/etc/passwd). 
- 
-{{:passwd_file.png|}} 
-  - Username: Används när man loggar in. 1-32 tecken långt. 
-  - Password: Ett x visar att det är krypterat och lagras i filen /etc/shadow. 
-  - User ID (UID): Varje användare har ett eget id. Det är detta som är unikt för just denna användare. Id 0 (noll) är reserverat för root. 
-  - Group ID (GID): Grupp id för användares standradgrupp, man kan tillhöra flera grupper, den informationen lagras i filen /etc/group. 
-  - User ID Info (commet): Extra information om användaren som tex namn mm... 
-  - Home directory: Den absoluta sökvägen till användarens hemkatalog. Om denna inte finns får man "/" som hemkatalog. 
-  - Command/shell: Den absoluta sökvägen till sitt skal (shell ex. /bin/bash). Måste inte vara ett skal, skulle kunna vara /bin/false då kan man inte logga in. 
- 
-1. Klipp ut alla login ur filen passwd\\ 
-2. Ordna alla login i tre kolumner med hjälp av paste.\\ 
-3. Klipp ut login på alla elever som går ut 2020, gör 3 kolumner separerade med "," och spara resultatet i en fil som heter te20_elever\\ 
-<code> 
-student ~ :cat te20_elever 
-ee2753,ae0042,af0018 
-jg0017,jj0020,vm8563 
-dn0007,wn0001,ro0002 
-lp0001,js0015,ss0032 
-vs0014,jv0016,av0018 
-fo0003 
-</code> 
- 
-4. Operatörsuppgift\\ 
-Om man skall jobba som operatör kommer man ganska ofta råka ut för att man måste göra om filer. Er uppgift är att göra om en fil på formatet infil.txt till formatet resultat.txt. Ni hittar både infil.txt och resultat.txt på min användare. 
-<code> 
-infil.txt: 
-"te03-70","0;\te\te03\te03-70;PSERVER_USEROLD.Park.Parkskolan" 
-"te03-71","0;\te\te03\te03-71;PSERVER_USEROLD.Park.Parkskolan" 
-"te03-72","0;\te\te03\te03-72;PSERVER_USEROLD.Park.Parkskolan" 
-"te03-73","0;\te\te03\te03-73;PSERVER_USEROLD.Park.Parkskolan" 
-... 
- 
-resultat.txt 
-"te03-70";"PSERVER_USER:\te\te03\te03-70" 
-"te03-71";"PSERVER_USER:\te\te03\te03-71" 
-"te03-72";"PSERVER_USER:\te\te03\te03-72" 
-"te03-73";"PSERVER_USER:\te\te03\te03-73" 
-... 
-</code> 
- 
-Det finns en fil som heter elevregister.txt. Du skall använda denna fil för att svara på följande frågor:\\ 
-5. Hur många bor på en adress där gatan heter något med vägen och ligger i Umeå. \\ 
-6. Skapa en fil som ser ut på följande sätt:\\ 
-<code>förnamn efternamn;postadress</code> 
-på de som inte bor i UMEÅ, filen skall vara sorterad på postadress.\\ 
-7. Det har blivit något fel i filen elevregister.txt ett antal rader har blivit dubletter, skapa en fil som ser ut på följande sätt:\\ 
-<code>personnummer förnamn efternamn</code> 
-som endast innehåller dessa dubletter. Hur många dubletter fanns det?\\ 
-8. Ta bort alla dubletter.\\ 
-9. Plocka ut personnumren ur filen elevregister.txt  och skapa en ny fil som bara innehåller personnumren i 4 kolumner separerade med semikolon. 
-ex. 
-<code> 
-121212-1212;590312-0052;361205-0074;760320-0028 
-760309-0023;620312-0024;560312-0030;761014-0027 
-</code> 
-Det finns en fil som heter "birdlist", ni skall lösa följande problem med hjälp av denna fil.\\ 
-Förklaring till filen:\\ 
-  UserID;Login;Datum och tid för kryss;Tomtkryss(1=sedd från tomt,0=sedd på annan plats);Fågel;Fågelordning systematik 
- 
-10. Lista alla observerade fåglar, en fågel per rad sorterat alfabetiskt.\\ 
-11. Lista alla observerade fåglar, en fågel per rad sorterat enligt fågelordning.\\ 
-12. Hur många olika fågelarter finns det i listan?\\ 
-<code> 
-student ~ :'dina kommandon' 
-345 
-</code> 
-13. Visa de arter som användaren med login JF har sett.\\ 
-14. Hur många arter har användaren med login JF sett? (209)\\ 
-15. Visa de arter som användaren med login JF har sett från sin tomt.\\ 
-16. Hur många arter har användaren med login JF sett från sin tomt? (86)\\ 
-17. Gör en lista där du visar login och hur många olika arter användarna har sett sorterat på den som har flest arter högst upp.\\ 
-<php> 
-// cut -f 2,5 -d ';' birdlist | sort -u | cut -f 1 -d ';' | uniq -c | sort -nr 
-</php> 
-<code> 
-freetux Public/operativsystem>'dina kommandon...' 
-    322 ANNA 
-    303 PEETER 
-    278 JÖRGEN 
-    256 LIAM 
-    224 SCHUTZER 
-    221 JOHANNA 
-    209 JF 
-    206 HELEN 
-    194 HASSE 
-    193 ANITA 
-    175 FRITZ 
-    170 UFO 
-    157 TONY 
-    154 GUNN 
-    152 MARGARETA 
-    151 EDVIN 
-    132 AKE 
-    131 KRISTINA 
-    123 NINA 
-    122 BÄCKSTRÖMS JR 
-    109 MIKAEL ÖDMARK 
-    102 AUGUST 
-     95 KOJ 
-     94 MARTIN 
-     77 LFAN 
-     71 JULIA 
-     63 ÅSA 
-     63 FELIX 
-     59 OSKAR 
-     58 AJ 
-     57 ROGER 
-     52 ANETTE 
-     39 MATTISG 
-     31 JONAS 
-     27 ELSA 
-      5 JESSICA 
-</code> 
- 
- 
- 
-<code> 
-cut, paste, uniq 
-</code> 
- 
-Exempel på hur man kan lösa några av uppgifterna 
-<code> 
-2. cut -f 1 -d : /etc/passwd | paste -s -d "  \n" 
-6. cut -d ';' -f 2,3,5 elevregister.txt | sed 's/;/ /' 
-7. (vissar alla dubbletter).  
-cut -d ';' -f 1,2,3 elevregister.txt | sed 's/;/ /g' | sort | uniq -D 
-7. (visar hur många namn som det fanns minst en dubblett av) 
-cut -d ';' -f 1,2,3 elevregister.txt | sed 's/;/ /g' | sort | uniq -D | uniq | wc -l 
-10. cut -f 5 -d ';' birdlist | sort -u 
-12. cut -d ';' -f 5 birdlist | sort | uniq | wc -l  
-13. grep JF birdlist | cut -f 5 -d ';' | sort -u  
-16. grep JF birdlist | cut -f 4,5 -d ';' | grep 1 | sort -u | wc -l 
-17. cut -f 2,5 -d ';' birdlist | sort -u | cut -f 1 -d ';' | uniq -c | sort -nr 
-</code>