Linux CLI

Kommandotolken – Linux

För att du enkelt ska kunna använda några av operativsystemets funktioner som styr dators hårdvara måste du först kunna kommunicera med operativsystemet. Till din hjälp finns det som kallas kommandoskal eller användargränssnitt. Kommandoskalet kallas på engelska shell som betyder skal eller kommandotolk.

Det finns ofta flera olika skal/kommandotolk som du kan välja mellan. I Linux är bash (Bourne Again Shell) ett vanligt skal men du kan också använda c-shell eller korn-shell.

linux-shell

Hur kommer man åt kommandotolken?

Det gör du med Terminalprogrammet. Terminal är kommandobaserade gränssnitt som kallas CLI, Command Line Interface och fungerar i princip som följande:

  • På terminalen visas en prompt som ger dig möjlighet att ange ett kommando.
  • Du anger det kommando som ska utföras genom att skriva det på prompten.
  • Kommandotolken tolkar ditt kommando så att operativsystemet kan utföra kommandot om det är möjligt, annars får du ett felmeddelande från tolken.
  • Slutligen när kommandot är utfört visas prompten på nytt, redo att ta emot fler kommando.
linux-10
Prompten visar användarnamn som är inloggad på en viss dator.

  • Symbolen @ separerar användarnamn och datornamn.
  • Kolon (:) är det tecken som separerar värdnamn och arbetskatalogen.
  • Tilde (”~”) är ett specialtecken som representerar hemkatalogen.
  • Den speciella dollartecken ($) säger att den inloggade användaren har begränsade rättigheter och att användaren inte är administratör (#).
linux-01

Kommando ls

För att se innehåll i en viss katalog används kommandot ls:

chalo@lin14:~$ ls

Som framgår på bilden till höger, listar kommandot ls innehållet i katalogen och därefter visas prompten igen, redo att ta emot fler kommando.

Alla kommandon och filnamn i Unix och Linux är ”case sensitive” exempelvis kommandot ls måste skrivas med små bokstäver och inte stora.

linux-02
För en mer detaljerad lista över kataloginnehållet kan vi ange kommandots alternativ, även känd som switchar. Det är ett sätt att finjustera kommandot, till exempel ls -l

chalo@lin14:~$ ls -l

Som framgår på bilden till höger visar ls -l kommando mycket mer information om innehållet i hemkatalogen. Observera att den första bokstaven i listan är bokstaven d som står för directory.

Dolda filer

Med ls -a kan dolda filer visas, dolda filer är oftast filer som innehåller inställningar/konfigurationer till olika tjänster och program. Deras filnamn börjar med en punkt. Det finns förstås inget som hindrar att man kombinerar de båda möjligheterna (ls -la).

 linux-03

 Automatisk komplettering

De flesta Linux kommando kan komplettera ord användaren skriver på prompten, du behöver trycka på TABB tangenten för att använda denna funktion. När TABB inte fungerar innebär att du behöver ange mer information till exempel ett tecken till.

Om du är i en situation där det finns flera liknande namn på filer eller kataloger trycker du TABB två gånger för att få en lista med alla möjliga träffar.

Rensa skärmen

Innan vi gör något annat låt oss rensa skärmen för att ta bort skräp som produceras av utsignalen från våra tidigare kommandon.
chalo@lin14:~$ clear

 Ändra arbetskatalogen

Som default ställer Linux prompten i användarens hemkatalog, /home/användarnamn. Användarens hemkatalog representeras med tecken ~.

  • chalo@lin14:~$
  • chalo@lin14:~$ cd Documents
  • chalo@lin14:~/Documents $

Bilden till höger visar hur den aktuella arbetskatalogen kan tas fram med kommandot pwd (”print working directory”).

Därefter exekveras kommandot cd ~ för att flytta tillbaka till användarens hemkatalog.

  • chalo@lin14:~/Documents $ cd ~
  • chalo@lin14:~$ pwd
  • /home/chalo

Till skillnad från MS-DOS och Windows använder Linux ett snedstreck (”/”) snarare än ett bakstreck (”\”) för att åtskilja katalogerna.

Flera alternativ finns för kommandot cd:

cd ..    —— hoppa ett steg upp i filträdet
cd ~     —— hoppa tillbaka till katalogen där du var innan
cd /     —– hoppa till rot
cd /etc     — hoppa till en viss katalog

Den speciella katalognamn ”..” (dubbel-dot) betyder ”en katalog upp”:

 linux-04

Flytta filer

Låt oss säga att vi hämtat två bilder med en webbläsare från internet och att de har sparats i katalogen nedladdningar (Downloads). Dessa bilder ska flyttas till en egen katalog under huvudkatalogen Pictures.

  1. Vi börjar med att verifiera utgångspunkten (fullständig sökvägen)
  2. Vi tittar vad som finns i katalogen Downloads. Två filer ska finnas med liknande namn men som skiljer sig i filändelse.
  3. Vi tittar vad som finns i katalogen Pictures.
  4. Vi skapar en folder med namn Animals i huvudmappen Pictures 
  5. Vi ändrar arbetskatalogen till ~/Downloads 
  6. Vi flyttar filerna till ~/Pictures/Animals

linux-05

Ta bort filer

Vi har två pingvinbilder men vi behöver bara en, den andra ska tas bort med kommando RM (remove). Sedan ska vi också ta bort katalogen Animals. Notera att en fil kommer att finns kvar i katalogen Animals.

Varning! Till skillnad från Microsoft Windows papperskorg finns det inget sätt att ångra en radering med rm.

För att ta bort kataloger/folder ka användas kommando RM med -r alternativ eller RMDIR. Kommandot RMDIR (remove directory) tar bort kataloger ifall dem är tomma.

linux-06

Skapa och Kopiera textfiler

Vi skapar först två kataloger i katalogen ~/Documents, Originals och Copies. Några filer kommer att skapas och sparas i mappen Originals. Sedan kopieras dessa filer till mappen Copies.

Det finns flera varianter av kommando för att skapa filer och fylla dem med något innehåll. Följande kommandon ska användas: echo, cat, touch och skapande av filer via omdirigering (>)

Nu kan vi kopiera filer från ~/Documents/Originals till ~/Documents/Copies

linux-07

Ändra namn på filer och kataloger

Förutom att flytta filer kan MV kommandot användas för att ändra namn på filer och även på kataloger. När man ändrar namn på kataloger bör man tänka på katalogens innehåll som kanske används av andra program.

Nu är vi klara och avslutar Terminalprogrammet genom att ange kommandot exit.

Du kanske undrar varför skall man lära sig massor med bökiga kommandon när det finns enkla grafiska program?

  1. Guider och handledning blir enkel. Istället för en lång beskrivning över hur och var du skall klicka (med bilder till), så kan man få ett fåtal kommandon som man enkelt kopierar till terminalen och kör.
  2. Kontroll. Med terminalen så kan man få full kontroll över vad som görs, och hur.
  3. Trygghet. Att lära sig grunden i terminalen ger en trygghet som användare. Ubuntu har ett så kallat ”felsäkert läge” som du kan logga in i, vilket enbart är textbaserat. Det är bra att känna sig lite hemma i detta

Uppdatera Ubuntu

Tryck på tangenter CTRL och Alt och t för att öppna en terminal. För att hämta uppdateringar från nätet skriv följande kommando:

chalo@lin14:~/sudo apt-get update

Ange ditt lösenord och tryck på Enter. Ubuntu hämtar uppdateringar och sedan visar hur dem bearbetas.

För att uppgradera mjukvara exekvera följande kommando:

chalo@lin14:~/sudo apt-get upgrade

För att installera nya program/mjukvara/paket exekvera följande kommando:

chalo@lin14:~/sudo apt-get dist-upgrade