Punktfiler och utskrifter
I det här steget går vi igenom vad punktfiler är och hur du kan anpassa systemet med hjälp av dem.
- Vad är punktfiler?
- Exempel på anpassning av skalet: Alias
- Exempel på anpassning av skalet: Variabler
- Exempel på anpassning av skalet: Prompten
- Utskrifter
- Sammanfattning och diagnos
Vad är punktfiler?
De flesta program låter dig ändra inställningarna via grafiska gränssnitt, t.ex. inställningarna i fönstersystemet. Ibland måste man dock ändra direkt i de filer där inställningarna lagras, särskilt om man vill anpassa
systeminställningarna. Inställningar lagras ofta i textfiler som brukar kallas punktfiler. Detta är helt enkelt filer vars namn börjar med en punkt och som man vanligtvis inte ser när man listar filer med
ls
.
Om du istället
skriver
ls -a
listar du även punktfiler. En sådan lista skulle kunna se ut så här
(där vi använt ls -al
för att få en mer detaljerad utskrift):
drwx--x--x 35 turte123 student 2048 jun 28 11:13 .
dr-xr-xr-x 25 root root 25 jun 28 11:10 ..
-rw-r--r-- 1 turte123 student 1900 sep 13 1999 .acrorc
-rw-r--r-- 1 turte123 student 632 aug 27 1999 .addressbook
-rw-r--r-- 1 turte123 student 1094 jan 28 1999 .cshrc
-rw-r--r-- 1 turte123 student 1031 maj 2 1998 .desksetdefaults
drwxr-xr-x 15 turte123 student 512 maj 23 10:02 .dt
-rwxr-xr-x 1 turte123 student 5398 sep 10 1997 .dtprofile
-rw-r--r-- 1 turte123 student 913 apr 23 1999 .emacs
drwx--l--- 2 turte123 student 512 maj 7 1998 .fm
-rw-r--r-- 1 turte123 student 268 maj 12 1999 .gv
-rw-r--r-- 1 turte123 student 1550 apr 3 15:39 .login
-rw-r--r-- 1 turte123 student 567 sep 26 1995 .mailrc
drwxr-sr-x 6 turte123 student 1024 jun 6 08:44 .netscape
-rw-r--r-- 1 turte123 student 14174 jun 8 15:49 .pinerc
-rw-r--r-- 1 turte123 student 0 mar 3 1999 .signature
drwxr-sr-x 2 turte123 student 512 apr 26 1997 .ssh
drwx--s--- 2 turte123 student 512 maj 2 1998 .wastebasket
-rw------- 1 turte123 student 20376 jun 28 10:33 .Xauthority
-rw-r--r-- 1 turte123 student 324 mar 23 19:27 .xpul
-rw-r--r-- 1 turte123 student 18 apr 3 16:22 .xpul.friends
Ju fler programvaror man har använt, desto fler punktfiler tenderar man att ha. En del punktfiler är i själva verket kataloger. Två viktiga filer när du kör på våra Linux-system är
.bashrc
och
.bash_profile
.
Den första körs varje gång du öppnar ett terminalfönster och den andra körs varje gång du startar ett login-skal, i praktiken alltså varje gång du loggar in. I dessa filer kan du lagra personliga inställnignar för skalet, men observera
att de inte finns när du får ditt konto. Om du vill ha personliga skalinställningar måste du alltså först skapa dem. Det gör du genom att helt enkelt skapa en fil med filnamnet
.bashrc
eller
.bash_profile
och lägga den i din hemkatalog.
Övning
Kontrollera vilka punktfiler du har genom att i din hemkatalog skriva
ls -al
.
Titta på innehållet i någon av dem t.ex. med kommandot
cat
.
Det är sällan man behöver ändra i sina punktfiler, men det kan vara bra att känna till att de finns. Om man inte här helt säker på var man gör bör man inte heller ge sig på att ändra i
.bashrc
eller
.bash_profile
.
Båda dessa filer är i praktiken så kallade
skript
och hur man konstruerar sådana finns beskrivet i ett annat avsnitt.
Viktigt
Filerna
.bashrc
och
.bash_profile
används för att justera inställningarna i standardskalet
bash.
Om du använder ett annat skal är det andra punktfiler som gäller.
Exempel på anpassning av skalet: Alias
Som vi konstaterade ovan finns det vissa punktfiler som körs när du loggar in eller startar ett skalfönster. Filen
.bashrc
körs varje gång du startar ett skalfönster.
Ett exempel på saker du kan lägga i
.bashrc
är så kallade
alias.
Du kan skapa kortkommandon i skalet om det finns långa och komplicerade kommandon som du vill utföra ofta. Nedan följer ett exempel på vad man kan
lägga in i filen:
alias ls='ls -l'
Detta innebär att varje gång du skriver
ls
i skalfönstret så kommer
ls
att köras med flaggan
-l
som gör att du får en detaljerad fillista.
Du kan se en lista över alla alias som finns genom att bara skriva kommandot
alias
.
Övning
Öppna
.bashrc
i valfri textredigerare och lägg till ett alias. Spara filen och öppna sedan ett nytt skalfönster och testa ditt nya alias. Du kan enkelt ta bort det efteråt genom att bara radera textraden i filen.
Exempel på anpassning av skalet: Variabler
I tidigare avsnitt har vi ändrat på variabler i en skalprocess, men varje gång vi stänger skalet så kommer de ändringar som vi har gjort försvinna. Vi kan använda
.bashrc
för att sätta och ändra skalvariabler direkt när vi
startar ett skalfönster.
Vi har tidigare satt skalvariabeln
MINVARIABEL
till "Det svarta guldet" med
export
-kommandot.
Man kan lägga in samma kommando i
.bashrc
för att se till att
MINVARIABEL
får bestående värde "Det svarta guldet". I filen lägger man alltså till raden
export MINVARIABEL="Det svarta guldet"
När man sedan startar om skalet så kommer
MINVARIABEL
vara satt till "Det svarta guldet".
turte123@li10-3:-$ echo $MINVARIABEL
Det svarta guldet
Lägga till aktuell katalog som sökväg
Det kan underlätta vid skrivning av skript att alltid ha den aktuella katalogen, som refereras av en punkt
(.
),
som en sökväg. Man kan enkelt lägga till detta i sina skalprocesser genom att använda
export
-kommandot
som ovan.
Övning
Öppna
.bashrc
i valfri textredigerare och lägg till den aktuella katalogen som sökväg. Använd metoden från modulen
Fil och modulsystemet
som ledning.
Exempel på anpassning av skalet: Prompten
I filen
.bashrc
kan man även ändra utseendet på hur skalfönstret ska se ut samt hur prompten ska bete sig. Detta gör att man kan få en lite personligare miljö att arbeta i. En del vill se vilken katalog man befinner sig i
eller vilken dator de är inloggade på. Man kan ställa in en hel del saker angående skalet. Allt som vi går igenom här behandlar skalet
bash
eftersom det är standardskalet som alla använder till en början. Det rekommenderas att
man inte byter skal om man inte vet precis vad man håller på med. I övrigt hänvisas till
info bash
för fler alternativ som man kan använda sig av.
Du kan ändra prompten i ditt skalfönster så att den visar annan information. Det normala utseendet är att den visar ditt användarnamn, vilken dator du är inloggad på samt aktuell katalog. Om du hellre vill se annan information går det
att anpassa genom att ändra värdet på systemvariabeln
PS1
.
Detta gör du genom att skriva t.ex. så här:
PS1='\u@\h:\W\$ '
Denna rad kan du antingen skriva in vid prompten direkt, för att testa, eller lägga in i filen
.bashrc
.
Ovanstående exempel visar koden för den normala prompten. Ett annat exempel är:
PS1='[\t] \w <\!> '
Detta visar aktuellt klockslag inom hakparenteser, aktuell katalog samt numret på det aktuella kommandot inom vinkelparenteser. Det finns ett flertal olika koder av typen
\x
som man kan använda för att få prompten att se annorlunda ut. Här är några exempel:
Kod | Beskrivning |
---|---|
\W | Visar den aktuella katalogen. Hemkatalogen visas med ett ~. |
\w | isar hela sökvägen till den aktuella katalogen. |
\! | Visar antalet kommandon som man har skrivit in. |
\h | Skriver ut datorns värdnamn. Skriver bara ut namnet innan första punkten. |
\H | Skriver ut datorns värdnamn. Skriver hela värdnamnet. |
\u | Skriver ut användarnamnet. |
\t | Skriver ut vad klockan är i 24h-format. gör samma sak fast skriver i 12h-format. |
\d | Skriver ut dagens datum. |
\n | Skriver ut en ny rad. |
Utskrifter
Du kan enkelt skriva ut textfiler från kommandoraden med kommandot
lp
.
Skrivarsystemet klarar även av att hantera PDF-, och PostScript-filer som skrivs ut direkt från kommandoraden.
turte123@li10-3:-$ lp uppgift4.c
ID för begäran är eduPrint-LiU-807 (1 fil(er))
turte123@li10-3:-$ lp Konferensprogram.pdf
ID för begäran är eduPrint-LiU-808 (1 fil(er))
turte123@li10-3:-$
De textfiler som skrivs ut måste ha teckenkodningen
UTF-8
.
Vissa program kan spara filer med fel tecknkodning, så om dina textfiler innehåller t.ex. svenska tecken blir utskriften felaktig om du skriver ut den rakt av med
lp
.
Ett alternativ som fungerar även om du ska skriva ut programkod, är att använda kommandot
a2ps
.
Som namnet lite kryptiskt antyder översätter det
ASCII
(d.v.s. vanlig text) till
PostScript
(ett språk som kan tolkas av många skrivare). För att skriva ut en fil kan du göra som i nedanstående exempel:
turte123@li10-3:-$ a2ps uppgift4.c
[uppgift4.c: 5 pages on 3 sheets]
[Total: 5 pages on 3 sheets]
ID för begäran är eduPrint-LiU-809 (0 fil(er))
turte123@li10-3:-$
a2ps
skriver normalt ut programkoden i två liggande kolumner, vilket innebär att texten blir lite mindre än normalt, men mycket mer överskådlig. Det finns en lång rad inställningar till
a2ps
,
men tyvärr finns det inga manualsidor. Du kan istället få en summerad beskrivning genom att skriva
a2ps --help
.
Sammanfattning
- En punktfil är en fil som börjar med en punkt. Dessa är vanligtvis gömda för användaren och innehåller ofta inställningar till program.
-
.bashrc
körs varje gång du öppnar ett terminalfönster. - Du kan skapa kortkommandon i skalet om det finns långa och komplicerade kommandon som du vill utföra ofta genom att använda ett alias.
-
I
.bashrc
kan du bl.a. skapa alias, variabler och skräddarsy prompten. -
Kommandot
lp
kan användas för att skriva ut en fil.
Diagnos
Det finns ingen diagnos för detta avsnitt men det kan vara en bra idé att repetera och testa det som tas upp så att det sätter sig på minnet!
Sidansvarig: Peter Dalenius
Senast uppdaterad: 2024-08-26