Göm menyn

TDP001 Handhavande av datormiljö

Examination

Kursen har två examinationsmoment, LAB1 och UPG1. I Moment LAB1 ingår systeminstallation, introduktionslaborationen samt skapande av webplats. Lösningen på introduktionslaborationen ska presenteras stegvis på webplatsen. I UPG1 ingår skriftlig redovisning av minst två föreläsningsuppgifter eller uppgifter från terminalkommandobeskrivningarna som redovisas som inlägg på skapad webplats senast den tidpunkt som presenteras nedan.
För godkänt betyg på kursen krävs att båda momenten redovisats och fått godkänt betyg.

Samtilga uppgifter och deadlines:

Uppgifter alla ska göra

  • Installation: Typiskt bra att ha ett operativsystem
  • Websidan: Skapa en webplats i blog-format där du använder enkla semantiska HTML5-element för att strukturera innehållet och CSS för att ordna utseendet
  • Introduktionslaborationen: En lab som hanterar grundläggande terminalkommandon för hantering av textfiler. Uppgiften finns under "Laborationer" i menyn.

Uppgifter i momentet UPG1

För att bli godkänd på detta moment ska minst två av följande uppgifter lösas och presenteras på din webplats innan deras respektive deadlines. Observera att lösningsgången ska presenteras noggrannt och kunna förstås av någon som inte läst på om den specifika uppgiften. Det räcker alltså inte att endast skriva sin lösning.
TitelUppgiftDeadline
Terminalkommandon V35
  1. Hur kan man med grep hitta alla rader med namn (förnamn eller efternamn) som slutar med tecknen "on"?
  2. Skriv ut de fem första efternamnen som inte avslutas med "son"
  3. I mappen /usr/lib finns det flera filer som har namn på formatet xxx.so.d, där xxx är dess namn och d är ett (eller flera separerade med .) heltal. Skriv ut alla dessa filers namn (dvs xxx-delen) till en fil med valfritt namn.
  4. Ge ett kommando som (endast) skriver ut hur många rader i filen som har ett namn som har bokstäverna "an" efter varandra. (Bör bli 7)
Torsdagen den 1/9 12.00. Lösningen kan skickas till kursledare om bloggen ännu inte är klar. Lösningen ska dock presenteras i bloggen senare.
Emacs (föreläsning 30/8) Lös uppgiften i introduktionslaborationen med hjälp av emacs. Du får endast använda dig av kommandon i emacs och ska nogrannt presentera dem stegvis på din blog. Torsdag den 8/9 12.00
Nätverk (föreläsning 30/8) Tag reda på och beskriv hur du kan automatiskt montera (eng. mount) din hemkatalog på IDAs filsystem under en mapp i ditt linux-system. Den kan nås antingen via ssh-servern remote-und eller via samba-servern obelix. Om du har ett LiU-id på formen fffeeNxx (dvs siffra N som första siffra) når du din hemkatalog på addressen \\obelix.ida.liu.se\users-N\fffeeNxx. Ni kan behöva lägga till ida.liu.se i adressen för att nå respektive server (krävs vid extern access). Anslutning via samba-protokollet rekommenderas då det normalt sätt är snabbare. Torsdag den 8/9 12.00
Terminalkommandon v37 - find
  1. Använd find för att lista alla python-filer som går att köra (har x-flaggan satt samt inleds med #!) och ligger maximalt tre kataloger under din hemkatalog.
  2. Använd find för att hitta alla filer under din hemkatalog som är större än 5Mb stora. (detta är bra att kunna om man skulle få slut på quota på IDAs filsystem!)
Torsdag den 15/9 12.00
Terminalkommandon v39 - funktioner Skapa en funktion som tar emot noll eller flera numeriska värden och skriver ut summan av dessa värden. Funktionen ska skriva ut 0 om inga tal anges. Du kan anta att eventuella argument är numeriska, detta behöver inte kontrolleras (men kan ta det som extra övning om du vill). Torsdag den 29/9 kl 12.00
Reguljära uttryck (föreläsning 4/10)
  1. Ett LiU-ID skrivs på formatet FEN där F är de tre första bokstäverna i förnamnet, E de två första i efternamnet och N är tal med två eller tre siffror (beroende på om det är en anställd eller student). Om förnamnet endast är två tecken långt blir den delen endast två tecken. Skriv ett mönster för att fånga ett LiU-ID.
  2. Ett datum i ISO-format skrivs YYYY-MM-DD. Skriv ett mönster för att fånga detta.
  3. Utöka ditt regexp från föregående uppgift för att även kontrollera datumets giltighet (full kontroll går inte då vi saknar logik men t.ex. är en månad som inleds med 9 felaktig).
  4. Skriv ett Python-program som (med hjälp av reguljära uttryck) hittar och skriver ut alla element i ett html-dokument (t.ex. din webplats). Endast elementtypen ska skrivas ut, inte eventuella attribut som elementet har. Välj själv om programmet läser in dokumentet från en lokal fil eller använder sig av modulen urllib för att hämta en fil över internet
Torsdag den 13/10 kl 12.00
Terminalkommandon v41 - Installation gcc är en samling av kompilatorer som bland annat kan kompilera c++-kod. Standardversionen på ert system är ganska gammal (4.8.2 i våra datorsalar) men språket har ändrats mycket senaste tiden och därför är det trevligt med en nyare version av kompilatorn. På sidan https://gcc.gnu.org finns det möjlighet att ladda ner version 6.1. Gör det och skriv en guide för hur du installerar gcc lokalt någonstans i din hemmapp. Tänk på att gcc kommer behöva ganska många extra bibliotek, dessa kan du ladda ner och installera enskilt alternativt kan du kolla om de finns tillgängliga som paket (leta isåfall efter dev-varianten). Torsdag den 20/10 kl 12.00

Sidansvarig: Eric Elfving
Senast uppdaterad: 2016-08-11