Programma's uitvoeren: Multitasking en SessiesOm een programma uit te voeren, typ je net als onder DOS de naam ervan in. Als de directory (Sectie ) waarin het programma is opgeslagen in het PATH is opgenomen (Sectie ), zal het programma worden opgestart. Uitzondering: in tegenstelling tot DOS, zal een programma in de huidige directory niet worden uitgevoerd, tenzij de directory in het PATH is opgenomen. Je kunt hieraan ontsnappen: als prog je programma is, typ dan ./prog.Zo ziet een typische commandoregel eruit:$ commando [-s1 [-s2] ... [-sn]] [par1 [par2] ... [parn]] [< invoer] [> uitvoer]waar de -s1, ..., -sn staan voor programma-switches. par1, ..., parn zijn de programma parameters. Je kunt verscheidene commando's op de commandoregel aanroepen:$ commando-1 ; commando-2 ; ... ; commando-nDat is alles over het draaien van programma's, maar het is eenvoudig een stap verder te gaan. Eén van de belangrijkste redenen om Linux te gebruiken is dat het een multitasking os is--- het kan verscheidene programma's tegelijkertijd draaien (van nu af aan, processen). Je kunt processen in de achtergrond opstarten en gewoon door blijven werken. Bovendien staat Linux toe dat je meerdere sessies hebt lopen: het is alsof je veel computers tegelijk aan het werk zet! Druk op <ALT-F1> ... <ALT-F6> om naar sessie 1..6 onder de virtuele console over te schakelen Typ su - <loginnaam> voor het starten van een nieuwe sessie onder dezelfde v.c. zonder de huidige v.c. te verlaten. Voorbeeld: su - root. Dit komt bijvoorbeeld van pas als je een taak uit moet voeren waarvoor alleen de root-gebruiker permissie heeft. Typ voor het beëindigen van een sessie exit. Als er gestopte jobs zijn (zie verderop), krijg je een waarschuwing. Voeg een ampersand '&' aan het einde van de commandoregel toe voor het in de achtergrond opstarten van een proces: $ prognaam [-switches] [parameters] [< invoer] [> uitvoer] & [1] 123 de shell identificeert het proces met een jobnummer (b.v. [1]; zie hieronder), en met een PID (Proces Identificatie Nummer; 123 in ons voorbeeld). Typ ps ax om te bekijken hoeveel processen er zijn. Hiermee krijg je als uitvoer een lijst met de thans draaiende processen. Typ kill <PID> voor het killen (beëindigen) van een proces. Wellicht dat je het eens nodig hebt als je niet weet hoe je een proces op de juiste wijze moet laten eindigen... Tenzij je root bent, kun je andermans processen niet killen. Soms kan een proces alleen worden beëindigd met kill -SIGKILL <PID>. Bovendien laat de shell je een proces stoppen of tijdelijk uitstellen, een proces naar de achtergrond sturen, en een proces vanuit de achtergrond naar de voorgrond brengen. In deze context, worden processen ``jobs'' genoemd. Typ jobs om te zien hoeveel jobs er zijn. Hier worden de jobs geïndentificeerd door een jobnummer, niet via een PID. Druk op <CTRL-C> om een in de voorgrond draaiend proces te stoppen (dit werkt niet altijd). Druk op <CTRL-Z> om een in de voorgrond draaiend proces uit te stellen (idem). Typ bg <%job> voor een uitgesteld proces naar de achtergrond te sturen (het wordt een job). Voor het naar de voorgrond brengen van een job typ je fg <%job>. Voor het naar de voorgrond brengen van de laatste job die naar de achtergrond is gestuurd, typ je eenvoudigweg fg. Typ voor het killen van een job kill <%job> waarbij <job> gelijk kan zijn aan 1, 2, 3,... Met deze commando's kun je tegelijkertijd een disk formatteren, een boel bestanden zippen, een programma compileren en een archief uitpakken en nog steeds de prompt tot je beschikking hebben. Probeer dit eens met Windows, enkel om het verschil in performance te zien (als het niet crasht, uiteraard).