Guide
för diverse UNIX-relaterade
aktiviteter
Den här guiden innehåller beskrivningar av några
av de
vanligaste UNIX-kommandona
och hur man kommer igång att jobba i en
UNIX-miljö.
Språkbruket är sådan att nybörjare ska kunna
använda sig av guiden. Denna sida ligger på Utbildningsprogammet
för Datalingvistik's web
server.
UNIX-guiden uppdaterades den 11:e september -97.
Intro
Filhantering
Diverse nyttigt
Utskrifter
Texteditorn Emacs
Externa uppkopplingar
Alias
Annat smått och gott
Några UNIX-program
Intro
|
 |
Att tänka på när du jobbar med
UNIX
* Till skillnad från DOS skiljer UNIX på stora och
små bokstäver.
Ex.vis är filerna Enfil.txt och enfil.txt helt
skilda filer.
* UNIX är ett fleranvändarsystem. Alla som jobbar på en
UNIX-terminal
jobbar på sitt eget konto. Ditt konto är inte bunden
till
en speciell maskin, utan du kan använda vilken maskin som helst,
bara den är kopplad till ett nätverk.
* Raderar du en fil är den borta. Det finns inga papperskorgar
där du kan hitta dina gamla filer. Däremot tas ofta backuper
på allt. Allting som fanns på ditt konto för en dag sedan
går oftast
att få tillbaka. Tala med din systemansvarige, så hjälper
denne dig.
Liten terminologi
Konto Ett utrymme på en
hårddisk, reserverat för en användare.
Alla
elever på en linje får sitt eget konto.
Eng:
...on your UNIX account
Tilde ~ Representerar vad som kallas "roten" på ditt
konto - ditt
hembibliotek.
Efter du har loggat in dig på ditt konto
befinner
du dig precis där.
Bibliotek Vad som på en Macintosh kallas för mapp.
Eng: directory
Hur denna guide används
* Kommandon, filnamn mm är skrivna med blå text
* Alla exempel är skrivna med grön
text
* Alla tangentbords-kombinationer är skrivna med röd
text
* Alla små tecken '.~; osv skall användas
precis som visas i beskrivningarna.
* Är denna text för stor/liten får du ändra på inställningarna
på din
web-läsare. Leta reda på vad som kallas "fixed
font" och ändra denna
till din belåtenhet.
Filhantering
|
 |
Lista filerna/biblioteken i ett bibliotek
ls
ls -l Ger en mer detaljerad
beskrivning
ls -al Visar alla filer +
detaljerad beskrivning
ls -CF Markerar alla bibliotek
med ett / och alla körbara
program med ett *
Skapa ett nytt bibliotek
mkdir namn
Ta bort bibliotek
rmdir namn
Byta bibliotek
cd namn
- Om du vill till roten - dvs högst upp i din egen hierarki:
cd vilket är kort
för cd ~ (den den grejen kallas 'tilde')
- Om du vill förflytta dig ett hack upp i hierarkin (biblioteket ovanför):
cd ..
Hur vet jag i vilket bibliotek jag befinner mig i?
Det står på den övre ramen på terminalfönstret,
efter namnet på den terminal du
jobbar på.
- Jobbar du på terminalen kleene och har bytt bibliotek från
roten
(ditt hembibliotek) till biblioteket tmp, står det:
kleene:~/tmp Detta visar var du befinner på ditt konto
- Vill du veta exakt var du befinner dig i systemet skriv:
pwd Detta visar hela sökvägen. pwd är
kort för present working directory.
Kopiera filer
- Kan användas på två sätt.
- Kopiera en fil till ett annat bibliotek:
cp filnamn destination
ex. cp tom.txt .. (kopiera filen
tom.txt till överliggande bibliotek)
- Kopiera en fil till en annan fil:
cp filnamn1 filnamn2 Finns filnamn2 tidigare
skrivs denna
skoningslöst över.
Finns den inte tidigare,
skapas
en ny fil.
- Kopiera hela bibliotek (med alla underliggande filer och bibliotek)
cp -r bibliotek destination
Flytta, döpa om filer
- Detta görs med ett och samma kommando (mv).
- Flytta:
mv filnamn destination
- Döp om:
mv filnamn nya_filnamnet Finns nya_filnamnet tidigare
skrivs det
över.
- mv gör alltså samma sak som cp,
men man har inte kvar filen man
manipulerat.
Ta bort filer
rm filnamn Filen är
borta för alltid. Om filen var mer än en dag
gammal,
finns det förmodligen en backup få den (och
alla
dina andra filer) hos systemansvarige.
rm -r bibliotek Använd
med försiktighet! Radera ett bibliotek
och allt som
finns i det.
Se vad som finns i en textfil
- Det finns två sätt att göra det på:
cat filnamn Skriver
filen rätt upp och ner (i terminalfönstret).
more filnamn Samma fast stannar
efter att terminalfönstret fyllts.
Fortsätter
först när du "ber om det".
Skriva till en textfil
- Detta kan man givetvis göra med en texteditor som tex Emacs, men det
finns andra sätt...
- Om du använder omdirigeringstecknet > kan
du styra
utskriften från ett cat eller more.
Ex:
cat fil1 > fil2 innehållet
i fil1 hamnar nu i fil2. Finns inte
fil2
så skapas fil2 automatiskt.
- All ev information som tidigare låg i filnamn2 i exemplet ovan skrevs
över. Om du vill lägga till något sist i en textfil utan
att skriva
över tidigare information använd två st >.
cat fil >> fil2 innehållet
i fil1 skrivs nu in sist i fil2 (på en ny rad).
Kallas append på engelska.
- Om du vill skriva in ny text till en fil direkt från tangentbordet
utan att behöva starta Emacs kan du skriva:
echo 'text' > filnamn eller
echo 'text' >> filnamn
Ändra skrivrättigheterna på en fil
- Detta beskrivs i detalj genom att skriva:
man chmod
- En bra-att-komma-ihågare:
chmod 700 filnamn Har
du någonsin skapat ett program som du sedan
inte
tillåts köra? chmod 700 fixar "kör-rättigheter"
till
filen åt dig. Den tar även bort alla rättigheter
för
andra användare.
Wildcards
- Det finns två sorters wildcards: ? och *
? ersätter ett tecken,
vilket som helst.
* " flera " ,
vilka som helst.
- Exempel på användningsområden:
rm *.gif Tar bort alla filer
i befintligt bibliotek som slutar på .gif
rm lab* " " " " " " som
börjar på lab
rm *.* " " " " " " som
har ett suffix.
rm * Tar
bart allt, förutom filer som börjar på .
Detta fungerar tillsammans med de flesta kommandon som manipulerar
filnamn.
Diverse nyttigt
|
 |
I UNIX jobbar man oftast i ett terminalfönster. Har du använt en PC tidigare
så är det som att jobba i DOS, fast trevligare.
Rensning av terminalfönstret
CTRL-L Håll in Controltangenten och tryck på L-tangenten.
Återanvänd tidigare utförda kommandon
- Pil upp och Pil ner tillåter dig att "bläddra" mellan tidigare
använda kommandon.

Automatisk frammatning av filnamn
TAB
Ex. användning: I ditt bibliotek finns en fil som heter
detabsolutlangstafilnamnjagskrivit.html och du vill ta bort det.
Skriv rm d, sedan trycker du på TAB så letas det filnamn som börjar
på d upp och skrives ut till fullo. Hade det dessutom funnits en fil
vid namn dumheter.html så hade du fått presicera dig: rm de TAB.

Programavbrytning/processer
- Först en liten förklaring av &. Startar du ett program och skriver
&-tecknet efteråt som innebär det att programmet körs "i bakgrunden".
Detta innebär att det terminalfönster du jobbar i inte är direkt
ansvarigt för programmet (i UNIX-termer - processen) du har startat.
Varje program som startas får ett eget processnummer.
- Om du inte använt &-tecknet när du startat ett program (vilket är listigt
när du kör egna program), kan du avbryta det genom att trycka:
CTRL-C Det måste ske i samma terminalfönster som du startade
programmet i.
Exempel:
emacs & Startar programmet Emacs i bakgrunden. Du kan nu fortsätta att
jobba i ditt terminalfönster.
emacs Nu kan du inte använda ditt terminalfönster förrän du avslutat
Emacs (eller återtagit kontrollen, se nedan). Du kan då avsluta
Emacs på två sätt. Antingen genom att stänga av det på vanligt
sätt (exit Emacs i menyn), eller så kan du trycka CTRL-C i
terminalfönstret.
- Om du fortfarande inte lyckas få tillbaks kontrollen tryck:
CTRL-D Det dödar det mesta (inklusive ditt terminalfönster)
- Om du startat ett program utan & och vill få tillbaka kontrollen över
terminalfönstret tryck:
CTRL-Z Programmet stannas ,(läggs i "suspended animation") men dödas
inte. Det går att köra igång igen med fg (foreground) eller bg
(background).
- Du fixar inte att få stopp på ett program:
ps Visar en lista över de processer som startats i det xtermfönstret
du befinner dig i. Programmets namn finns efter processnumret. Ex. du
har startat Emacs och vill döda den processen. ps ger följande lista:
25626 pts/3 0:02 tcsh
25694 pts/3 0:17 emacs
25745 pts/3 0:00 ps
- För att bli av med Emacs-processen skriv:
kill 25694 Då dödas processen.
- Va, lever den fortfarande? skriv:
kill -9 25694 Då dödas den extra mycket.
- Hittar du inte programmet du söker på listan, skriv:
ps -a Visar de flesta processer som körs på den dator du är inloggad på.
ps -ef Visar alla processer och vem som äger dem + lite till.

Musfunktioner
- Kopiera-klistra:
- Dubbeltryck på ett filnamn med vänster musknapp och hela filnamnet
markeras. Tryck sedan på mittenknappen och texten skrivs ut (efter prompten).

Skärmlåsing
- Gå aldrig ifrån din skärm utan att låsa dem. Folk kan hitta på så
mycket roligt att göra med ditt konto.....
xlock Låser skärmen.

Att logga ut
När man är klar för dagen får man inte glömma att logga ut! Skriv:
exit
Utskrifter
|
 |
Att skriva ut
- För att skriva ut kan man använda lp eller mpage
lp -d skrivarnamn filnamn
mpage -Pskrivarnamn filnamn Inget
mellanrum mellan -P och skrivarnamnet.
Ex: Antag att skrivaren heter scribe och filen du ska skriva
ut heter
utskrift.ps. Skriv:
lp -d scribe utskrift.ps
mpage -Pscribe utskrift.ps
- Ibland behöver man inte specificera vilken skrivare man vill använda.
I så fall räcker det med:
lp utskrift.ps
mpage utskrift.ps
Vad är det för skillnad på lp och mpage?
lp - Ger en 'vanlig'
utskrift.
mpage - Skriver ut flera sidor/A4, har fler
funktioner
mpage i mer detalj
Det går att skriva ut 1,2,4 eller 8 sidor/A4 med eller utan ram.
Det finns många flaggor man kan ge mpage så enklast är
att ge ett exempel:
mpage -1bA utskrift.ps 1 -
Skriver ut 1 sida/A4
b -
Skriver inte ut ramar.
A -
konverterar utskriften till A4-format
Vill du specificera att skrivaren ska vara scribe och skriva
ut 4 sidor/A4
skriv:
mpage -4bAPscribe utskrift.ps
Hur ser man vilka utskrifter som håller
på att skrivas ut?
lpstat -o Ger en lista på alla
utskrifter som står i
"printerkön" enl
formen:
jobbid terminal ! användare storlek datum
skrivarnamn
- Ex. Du har skrivit lp utskrift.ps Skriv lpstat så
kan det se ut så här:
scribe-546 frege.cling.gu.se!cl2lryd 44713 Sep
07 23:28 on scribe
Hur avbryter jag min utskrift?
lprm jobbid eller
cancel jobbid
- Ex. För att stoppa utskriften som beskrevs ovan skriv:
cancel scribe-546
Hur avbryter jag andras utskrifter?
- Det kan du inte. Endast systemansvarig kan fixa det. Ok, inte helt sant.
Skrivaren kan vara utrustad med en 'avbryt utskrift'-knapp.
Texteditorn Emacs
|
 |
Emacs är den vanligast använda texteditorn på UNIX-system. Man kan göra
ALLT med Emacs. Nedan följer några praktiska tips och funktioner, snarare
än de vanligaste funktionerna.
Hjälp, jag har tappat kontrollen över Emacs
CTRL-g Avslutar allt lurt som Emacs dragit igång. (Helt ofarlig)
Använd direkt när du är tveksam om vad som händer.
Öppna en ny fil i ett nytt fönster
- När du vill öppna eller skapa en ny fil i ett nytt fönster
gå INTE till
terminalfönstret och skriv emacs filnamn igen. Då startar du
ett nytt
Emacs. Det är som att ha igång två WORD samtidigt (liten överdrift).
Nä,
vad du gör är att du memorerar följande:
CTRL-X 5 f alt. CTRL-x
5 CTRL-f
Skriv sedan in önskat filnamn i minibufferten (utrymmet längst
ner).
Prompten har automatiskt flyttats dit. Tryck sedan ENTER så öppnas
filen
i ett nytt fönster. TAB kan användas
för att mata fram filnamn.
Skriver du in namnet på en fil, säj minfil.txt,
som inte finns öppnas en
buffert med det namnet. minfil.txt finns
inte "på riktigt" ännu. Du måste
spara filen i Emacs först.
Uppdatera fönstret
- I vissa 'modes' ex.vis HTML helper-mode eller i C-mode så gläder Emacs
användaren med att färgkoda vissa delar av texten/koden. detta uppdateras
inte alltid automatiskt när du skriver till ny text. Då får du göra det
manuellt allt efter hand genom att trycka:
CTRL-l (bokstaven l) fungerar ej med -L.
- Texteditering:

Rensa en textrad
- Ställ dig i början på en textrad och tryck:
CTRL-k Rensar allt till höger om markören.

Ångra
CTRL-SHIFT_ Uhm... dvs håll in CONTROL-tangenten och SHIFT-tangenten
och tryck på - tangenten (den precis till vänster om högra
SHIFT-tangenten). Man kan ångra i flera steg.

Musfunktioner
- Kopiera-klistra in: Markera text med vänster musknapp intryckt. Klistra in
med mittenknappen. - OBS! sker precis där muspekaren befinner sig, INTE där
markören befinner sig. Det senaste markerade är det som finns i "minnet". Man
behöver/kan inte spara på samma sätt som på PC/MAC.
- Klippa-klistra: Markera med vänster musknapp intryckt. Dubbelklicka
sedan med höger musknapp. Klistra in med mittenknappen.

Ändra storlek/typsnitt på texten
- Håll inne SHIFT samtidigt som du trycker på vänster musknapp (muspekaren ska
vara innanför Emacs-fönstret), så får du upp en meny. Bara att välja.
OBS! - Detta kan variera beroende på vilken version av Emacs du använder.
Externa uppkopplingar
|
 |
Inloggning på andra konton
- Det finns fler sätt att "logga upp sig" på andra konton: rlogin,
ssh och telnet
Enklast och säkrast är att alltid använda ssh.
ssh konto Skriv sedan
ditt lösenord, så är allt klart.
- All information du skickar är krypterad. Ifall någon skulle försöka "lyssna
av"
vad du håller på med, har de ingen chans att förstå det.
Kort och gott. Använd alltid ssh
Flytta filer mellan konton - FTP (File transfer
protocol)
ftp destination
- Ex. Du vi hämta en fil från ditt labkonto dlpt-12 på Matematiskt
center.
Först, tänk på vilket bibliotek du befinner
dig i. De filer du hämtar hamnar
i detta bibliotek.
Skriv sedan:
ftp hem.passagen.se Följande
skrivs då ut:
Connected to hem.passagen.se.
220 Gudrun FTP server .... ready.
Name (hem.passagen.se:ditt namn):
- Skriv då in dlpt-12, ENTER
Skriv sedan in ditt lösenord, ENTER
Väl inne kan du navigera dig fram med vissa vanliga UNIX-kommandon:
- För att se vilka filer/bibliotek som finns i det bibliotek du
befinner dig skriv:
ls
- För att byta bibliotek skriv:
cd bibliotek
- Om du vill veta vilket bibliotek du befinner dig i:
pwd
- Hämta hem en fil:
get filnamn
- Vill du hämta alla filerna i ett bibliotek kan du skriva :
mget * Detta är en förfrågan
att plocka hem alla filer i det befintliga
biblioteket. ftpprogrammet
kommer att fråga dig för varje fil
om du vill ladda ner den.
- Om du vill kopiera en fil till biblioteket dit du har ftp:at dig:
put filnamn Kopierar
en fil till kontot du är inloggad på, från det
bibliotek
du jobbar ifrån (där du skrev ftp...).
- Det går faktiskt att byta bibliotek att jobba ifrån. Så om
du vill kopiera
filer till/från ett nytt bibliotek skriv:
lcd bibliotek Observera
att det inte går att att se vilket bibliotek
man
jobbar ifrån. Är du osäker var du har dina bibliotek,
öppna
ett terminalfönster till och titta därifrån.
- För att lista alla kommandona som kan användas skriv:
help
- För att avsluta ftp skriv:
bye eller tryck CTRL-d
Alias
|
 |
Vad är ett alias?
- Jo ett alias är ett kommando du har hittat på för att
ersätta ett eller flera andra kommandon/kommandosekvenser.
Hur vet man vilka alias som finns?
alias Listar alla gällande
alias.
Hur skapar man ett alias?
alias aliasnamn 'kommando' alt.'kommandosekvens'
- Ex: alias copy 'cp'. Nu fungerar copy på samma
sätt som kommandot cp.
Ett sådant här alias fungerar bara tills man loggar ur. Det
sparas inte.
För att göra permanenta alias, se nedan.
- Vill du aliasa an sekvens av kommandon skriv enligt följande:
alias aliasnamn 'kommando;kommando'
Ex:
alias emacochxv 'emacs&; xv&' Skriver
du sedan emacsochxv startas programmen
Emacs
och xv.
Hur vet man att man inte skriver över ett
befintligt alias?
- Antingen skriver du alias och kollar hela listan,
annars skriver du:
alias tänktaliasnamn Finns
ett alias redan visas isåfall vad aliaset gör.
Hur skapar jag permanenta alias?
- Skapa en aliasfil:
Att skapa en aliasfil
- Byt bibliotek till ~/.rc.user.d/csh:
cd ~/.rc.user.d/csh
- Har du inget sådant sådant bibliotek skriv följande:
cd
mkdir .rc.user.d
cd .rc.user.d
mkdir csh
cd csh
emacs alias &
- Skriv aliaser i denna fil som beskrivet ovan. Använd TAB mellan
orden:
alias TAB aliasnamn TAB 'kommando' alt.'kommandosekvens'
OBS OBS!!! Alla alias i aliasfilen MÅSTE avslutas
med vagnretur (ENTER)
Några praktiska aliasexempel
alias l 'ls
-CF' ls listar alla filerna och bibliotek som finns
i
gällande bibliotek. -CF gör att en slash '/'
läggs
på efter varje bibliotek och att en '*'
läggs
på efter alla exekverbara program. Tilläggen
är
rent kosmetiska.
alias m 'more' Finns
kanske redan som alias.
alias net 'netscape &' På alias
som startar program, lägg till
&-tecknet
i aliaset.
alias ealias 'emacs ~/.rc.user.d/csh/alias &' Öppnar
aliasfilen för
redigering
var du än
befinner
dig.
- Du kan även använda variabler i aliasen. Skrivs \!* Ex:
alias e 'emacs
\!* &' Gör att du kan direkt öppna vilken fil som
helst
och få processen i bakgrunden. Ex:
e
dok.txt - öppnar ett Emacs med filen
dok.txt laddad.
Processen hamnar i bakgrunden.
alias md 'mkdir
\!*; cd \!*' Gör att du kan skapa ett directory +
att
du hamnar där. Ex: md tmp är
ekvivalent
med att skriva mkdir tmp
följt
av cd tmp.
alias xv 'xv -perfect
-8 -slow24 \!* &' Startar bildvisar-programmet
xv så att
bilderna visas
med
många färger.
Få ett nytt alias att fungera direkt
- Det gör genom att skriva:
reinit
(efter att ha sparat aliasfilen såklart)
Annat smått och gott
|
 |
Automatiskt få med underskrift mm på dina
mail
emacs .signature & Observera
punkten innan signature.
Det
du sparar i den här filen läggs automatiskt till
i
dina mails. När du 'composar' ett mail i ex.vis Pine ser
du
innehållet i din .signature fil längst
ner i mailet.
finger
- Om du använder kommandot:
finger användarnamn får
du information om denna användare.
Ex. finger cl2lryd@cling.gu.se
- Observera att finger inte visar korrekt information om när man senaste
loggade in, däremot stämmer datumstämpeln på när
man senast läste sin
post.
Hur påverkar man det innehåll som finger visar?
Det finns två områden du kan ge information om: ditt nuvarande
projekt
och dina framtidsplaner.
- För att visa info om ditt nuvarande projekt skapa:
emacs .project Skriv in och
spara.
- För att visa info om dina framtidsplaner skapa:
emacs .plan
(Dessa meddelanden bör vara korta.)
OBS! Dessa "punktfiler" nämnda ovan skall ligga i roten
på ditt konto.
Få saker att hända när du loggar
ut
Skapa en fil som heter .logout
emacs .logout&
I den kan du skriva kommandon som du vill ha utförda.
OBS!! Avsluta varje rad med vagnretur (ENTER).
Skriv gärna följande i din .logout-fil:
rm -r .netscape/cache/* ENTER Varning! Se
till att du skriver det där exakt som det står.
Detta rensar alla bilder som programmet Netscape samlar på sig
i
sitt sk cache-minne. Detta sparar mycket hårddiskutrymme för
systemet. Gör att systemansvarige tycker om dig.
Att skapa en hemsida
Alla sidor du vill ha kopplat till din hemsida på WWW måste
ligga i ett
speciellt bibliotek: .www. Alla filer du lägger där blir åtkomliga
för hela
världen om du inte skyddar dem från insyn.(Se
chmod)
- Skapa biblioteket .www
mkdir .www
- Förflytta dig sedan dit (cd .www) och
skapa filen index.html
emacs index.html &
- index.html är din "rot-fil" på din
hemsida och alla dina egna länkar
utgår sedan därifrån.
- För att var helt säker på att alla kan läsa din fil
skriv:
chmod a+r index.html
- En html-sida är inget annat än en vanlig textfil. Men om det ska
gå att läsa
denna fil från en Web-läsare som Netscape eller Internet
Explorer måste
texten formateras på ett speciellt sätt. Till detta använder
man HTML -
Hyper Text Markup Language. Med hjälp
av HTML kan du visa text, bilder mm
på en mängd olika sätt. Man kallar en sådan fil
för ett HTML-dokument.
Det är ingen ide att gå in på detaljerna hur HTML är
uppbyggt här. Det finns
en mycket bra introduktion om detta på andra sidor:
Publicera information
på WWW
A
guide to HTML and CGI scripts
Några UNIX-program
|
 |
- Alla program som beskrivs nedan startas genom att skriva namnet på
programmet följt av ett & (för att programmet ska köras självständigt)
Bildvisare
xv
Användningsområden:
- Titta på bilder
- Behandla bilder
- Göra skärmdumpningar (kopiera vad som finns på din skärm till en bild)
Intressant att veta om xv:
- För att bilderna du laddar ska visas på snyggast möjliga
sätt (många färger), kan du starta xv med följande flaggor:
xv -perfect -8 -slow24 & (Exempel på ett alias för detta)
- Roligaste funktionen i xv är grab. Men den kan du göra
en skärmdumpning, dvs du kan spara precis vad som helst
som finns på skärmen som en bild.

Ritprogram
* xpaint
Användningsområden:
- Rita bilder
Intressant att veta om xpaint:
Ett enkelt ritprogram. Mycket användbart.
Innan man startar xpaint får man tänka på att UNIX-maskiner har ofta begränsat
med färger. Därför måste man ibland stänga andra program för att kunna starta
xpaint (den får inte tillräcklig med färger). Ett sådant program är Netscape.
Det går bra att först starta Netscape och sedan xpaint. Om du har startat
Netscape med egna färger går det bra att köra xpaint sen. Detta gör du genom
att skriva: netscape -install &
* xfig
Användningsområden:
- Rita bilder
Intressant att veta om xfig:
Ett avancerat objektorienterat ritprogram.

Räknare
* calctool
Användningsområden:
- Att räkna med
Intressant att veta om calctool:
En avancerad miniräknare
Fler på gång.....

|