Where did Unix come from?

Lær Unix: Den Ultimative Begynderguide

17/10/2007

Rating: 4.16 (2467 votes)

Velkommen til denne omfattende guide til Unix, et kraftfuldt og indflydelsesrigt operativsystem, der har formet fundamentet for meget af den teknologi, vi bruger i dag. Uanset om du er en studerende, en spirende udvikler eller blot nysgerrig efter at lære, hvordan computere fungerer på et dybere niveau, vil denne artikel give dig den nødvendige viden til at starte din rejse. Vi vil dække alt fra Unix' historie og grundlæggende arkitektur til praktiske kommandoer for filhåndtering, tekstbehandling og endda de første skridt inden for shell scripting. Gennem en blanding af teoretisk forklaring og praktiske eksempler vil du opbygge en solid forståelse, der gør dig i stand til at navigere og arbejde effektivt i et Unix-baseret miljø.

What are Unix lecture notes & exercises?
These lecture notes and exercises are designed to support an intensive introductory course on UNIX or to act as a reference to users who are new to UNIX. This course was designed particularly for use with the Linux operating system but much of it applies to other UNIX systems as well.
Indholdsfortegnelse

Hvad er Unix? En Kort Historie og Betydning

Unix blev oprindeligt udviklet i slutningen af 1960'erne og begyndelsen af 1970'erne hos Bell Laboratories af en lille gruppe medarbejdere, herunder Ken Thompson og Dennis Ritchie. Det blev designet som et multitasking- og multiuser-operativsystem med en filosofi om enkelhed og modularitet. Hvert værktøj blev skabt til at gøre én ting og gøre det godt. Disse små, specialiserede værktøjer kunne derefter kombineres på komplekse måder for at løse avancerede opgaver. Denne designfilosofi har vist sig at være utroligt robust og har haft en enorm indflydelse på udviklingen af software og andre operativsystemer. Mange moderne systemer, herunder Linux, macOS, Android og iOS, har deres rødder dybt plantet i Unix' principper. At lære Unix er derfor ikke kun at lære et gammelt system; det er at forstå grundlaget for moderne computing.

Kom i Gang: Den Grundlæggende Kommandolinje

Hjertet i Unix er dens kommandolinje-interface (CLI), også kendt som en shell. Her interagerer du med systemet ved at skrive kommandoer i stedet for at klikke på ikoner. Selvom det kan virke skræmmende i starten, giver det en utrolig grad af kontrol og effektivitet, når du først har lært det. Lad os starte med de mest grundlæggende kommandoer til at navigere i filsystemet.

Visning af Filer og Mapper: `ls`

Den første kommando, de fleste lærer, er ls (list). Den viser indholdet af den mappe, du befinder dig i.

ls

Denne simple kommando kan udvides med 'flag' for at give mere detaljeret information. For eksempel viser ls -l en lang liste med detaljer som filrettigheder, ejer, størrelse og dato for sidste ændring. ls -a viser alle filer, inklusiv skjulte filer (dem, der starter med et punktum).

Oprettelse af Mapper: `mkdir`

For at organisere dine filer har du brug for mapper (directories). Du opretter en ny mappe med kommandoen mkdir (make directory).

mkdir min_nye_mappe

Dette opretter en mappe ved navn 'min_nye_mappe' i din nuværende placering.

Skift af Mappe: `cd`

For at flytte dig rundt i mappestrukturen bruger du cd (change directory).

cd min_nye_mappe

Denne kommando flytter dig ind i den mappe, du lige har oprettet. For at gå et niveau op i mappestrukturen, bruger du cd ... De to punktummer (..) er en speciel reference til den overordnede mappe.

Grundlæggende Filhåndtering

Nu hvor du kan navigere i dit filsystem, er det tid til at lære at håndtere filer. Dette inkluderer at oprette, kopiere, flytte og slette filer.

What is a Beginners Guide to Unix?
A beginners guide to Unix - A complete Unix tutorial series of 20+ in-depth text and video tutorials with hands-on examples. learn Unix Architecture, Unix Commands, and the applications including File Management, Text Processing, and Unix Shell Scripting.

Kopiering af Filer: `cp`

Kommandoen cp (copy) bruges til at lave en kopi af en fil. Syntaksen er cp [kilde] [destination].

cp original_fil.txt kopi_af_fil.txt

Du kan også kopiere en fil til en anden mappe:

cp min_fil.txt min_nye_mappe/

Flytning og Omdøbning af Filer: `mv`

Kommandoen mv (move) bruges både til at flytte filer og til at omdøbe dem. Hvis destinationen er en mappe, flyttes filen. Hvis destinationen er et nyt filnavn i samme mappe, omdøbes filen.

For at flytte en fil:

mv vigtig_fil.txt dokumenter/

For at omdøbe en fil:

mv gammelt_navn.txt nyt_navn.txt

Sletning af Filer og Mapper: `rm` og `rmdir`

For at slette en fil bruges rm (remove). Vær meget forsigtig med denne kommando, da filer slettet på denne måde typisk ikke kan gendannes!

rm uønsket_fil.txt

For at slette en tom mappe kan du bruge rmdir (remove directory). Hvis mappen indeholder filer, skal du bruge rm -r for at slette mappen og alt dens indhold rekursivt.

rm -r gammel_mappe

Arbejde med Indholdet af Filer

Det er ofte nødvendigt at se eller søge i indholdet af tekstfiler direkte fra kommandolinjen.

Visning af Filindhold: `cat`, `less` og `more`

Den simpleste måde at vise en hel fil på skærmen er med cat (concatenate).

cat min_tekstfil.txt

For længere filer er cat upraktisk, da teksten scroller forbi hurtigt. Her er less eller more bedre. De viser filen en side ad gangen, så du kan navigere op og ned med piletasterne.

less lang_rapport.txt

Søgning i Filer: `grep`

grep er et ekstremt kraftfuldt værktøj til at søge efter specifikke mønstre eller tekststrenge i filer. For eksempel, for at finde alle linjer, der indeholder ordet "fejl" i en logfil:

grep "fejl" system.log

Avancerede Koncepter: Pipes og Redirection

Den sande styrke ved Unix' shell ligger i evnen til at kombinere simple kommandoer for at udføre komplekse opgaver. Dette gøres primært ved hjælp af redirection og pipes.

Omdirigering (Redirection)

Normalt sendes output fra en kommando til skærmen (standard output). Med redirection kan du sende det til en fil i stedet. Dette gøres med `>`-operatoren.

ls -l > fil_liste.txt

Denne kommando tager outputtet fra `ls -l` og gemmer det i en fil ved navn `fil_liste.txt` i stedet for at vise det på skærmen. Hvis filen ikke eksisterer, oprettes den. Hvis den eksisterer, overskrives den. For at tilføje til slutningen af en fil kan du bruge `>>`.

Is Unix a 'Linux-like' operating system?
Even so, most software developers, even those who have grown up during this venerable "Linux revolution" have at least heard of Unix. It sounds similar to Linux, and you've probably heard people use these terms interchangeably. Or maybe you've heard Linux called a "Unix-like" operating system. So, what is this Unix?

Pipes

En pipe, repræsenteret ved `|`, tager outputtet fra én kommando og bruger det som input til en anden kommando. Dette giver dig mulighed for at kæde kommandoer sammen.

Forestil dig, at du vil finde en specifik fil i en lang liste. Du kan kombinere `ls` og `grep`:

ls -l /etc | grep "conf"

Her sendes listen over filer i `/etc`-mappen direkte til `grep`, som derefter filtrerer og kun viser de linjer, der indeholder "conf".

Sikkerhed og Rettigheder i Unix

Unix er et multiuser-system, hvilket betyder, at filsystemet har et indbygget system til at styre, hvem der må læse, skrive og eksekvere (køre) filer. Disse kaldes rettigheder.

Når du kører ls -l, ser du en streng som `-rwxr-xr--`. Denne streng definerer rettighederne for filen.

Forståelse af Filrettigheder

Rettighedsstrengen er opdelt i fire sektioner:

  1. Type: Det første tegn (`-` for en fil, `d` for en mappe).
  2. Ejer (User): De næste tre tegn (`rwx`) definerer rettighederne for filens ejer.
  3. Gruppe (Group): De næste tre tegn (`r-x`) definerer rettighederne for medlemmer af filens gruppe.
  4. Andre (Others): De sidste tre tegn (`r--`) definerer rettighederne for alle andre brugere.
Oversigt over Rettighedstegn
TegnBetydningBeskrivelse
rRead (Læse)Tilladelse til at læse indholdet af filen.
wWrite (Skrive)Tilladelse til at ændre eller slette filen.
xExecute (Eksekvere)Tilladelse til at køre filen (hvis det er et program eller script).
-Ingen tilladelseDen specifikke rettighed er ikke givet.

Du kan ændre rettigheder med kommandoen chmod (change mode).

Ofte Stillede Spørgsmål (FAQ)

Hvad er forskellen på Unix og Linux?

Unix er navnet på en familie af operativsystemer, der stammer fra det originale system fra Bell Labs. Nogle er kommercielle (som macOS og AIX). Linux er teknisk set kun en kerne (kernel), der er inspireret af Unix, men udviklet fra bunden af Linus Torvalds. Når folk taler om "Linux", mener de ofte et komplet operativsystem (en distribution som Ubuntu eller Fedora), der bruger Linux-kernen sammen med GNU-værktøjer og anden software, hvilket skaber et "Unix-lignende" system.

Hvorfor skal jeg lære Unix i dag?

At lære Unix og kommandolinjen giver dig en dybere forståelse af, hvordan computere fungerer. Det er en essentiel færdighed for softwareudviklere, systemadministratorer og dataforskere. Mange servere, cloud-infrastruktur og indlejrede systemer kører på Unix-lignende systemer, så kompetencer inden for dette område er meget efterspurgte.

Er kommandolinjen svær at lære?

Som med alt nyt er der en indlæringskurve. Men ved at starte med de grundlæggende kommandoer og gradvist bygge ovenpå, vil du hurtigt opdage, hvor kraftfuld og effektiv den kan være. Nøglen er regelmæssig øvelse og ikke at være bange for at eksperimentere.

Hvad er en "shell"?

En shell er det program, der tager imod dine kommandoer og fortæller operativsystemet, hvad det skal gøre. Det er dit primære interface til systemet i et kommandolinje-miljø. Der findes mange forskellige shells, hvor `bash` (Bourne Again SHell) er en af de mest almindelige i dag.

Hvis du vil læse andre artikler, der ligner Lær Unix: Den Ultimative Begynderguide, kan du besøge kategorien Teknologi.

Go up