Ta kommandot (10) — Skapa katalog, installera program, hämta filer från webben och en del annat

15Jul10

Nu ska vi ge oss på lite seriöst labbande i terminalen. Vi börjar med att skapa en mapp, eller ”katalog” som terminalfolket ofta kallar det. På engelska heter det ”directory”. Det kan vara bra att lägga på minnet.

Observera! Kolla noga så att det inte finns någon mapp med det namnet innan, för då kan det hända onda saker!

Skapa en mapp

urban@yoda:~$ ls labbmapp
ls: cannot access labbmapp: No such file or directory

Bra! Då är det namnet ledigt, vi skapar mappen.

urban@yoda:~$ mkdir labbmapp

Kommandots namn mkdir är en förkortning av make directory. Vi hoppar genast in i vår nyskapade mapp

urban@yoda:~$ cd labbmapp

Skriv gärna ett ls och förvissa dig om att den nyskapade mappen är tom. Titta gärna på vad du gjort från den grafiska filbläddraren också, så att du förvissar dig om att det du gjort inte är något hokus-pokus.

Hämta en fil från webben

Nu ska vi hämta en fil att leka med. Det är den filen som jag klantade bort i den förra övningen, alltså första kapitlet av ”Röda rummet”.  Kommandot wget är ett väldigt vanligt och användbart program, som kan tanka enstaka sidor eller hela webbsajter.

urban@yoda:~/labbmapp$ wget http://runeberg.org/rodarum/01.html
–11:23:01–  http://runeberg.org/rodarum/01.html
=> `01.html’
Resolving runeberg.org… 130.236.254.104
Connecting to runeberg.org|130.236.254.104|:80… connected.
HTTP request sent, awaiting response… 200 OK
Length: 28,215 (28K) [text/html]

100%[====================================>] 28,215        –.–K/s

11:23:01 (359.39 KB/s) – `01.html’ saved [28215/28215]

urban@yoda:~/labbmapp$ less 01.html

Hmm, den ser lite knasig ut, få se om vi kan lista ut något om filens format. Frågetecken eller konstiga teckenkombinationer inom hakar ersätter åäö. Det måste vara fel filformat.

Ändra format på en fil

urban@yoda:~/labbmapp$ file 01.html
01.html: HTML document text

Okej, jag hittade inget väsentligt, men vet att Ubuntu helst vill ha ett format som heter UTF-8, så vi får chansa en aning. Vi konverterar filen från iso8859-1 till utf-8 och sparar resultatet i filen kapitel_1.

urban@yoda:~/labbmapp$ iconv -f iso8859-1 -t utf-8 01.html >kapitel_1

En koll med less visar att filen ser bättre ut.

urban@yoda:~/labbmapp$ less kapitel_1

urban@yoda:~/labbmapp$ ls
01.html  kapitel_1
urban@yoda:~/labbmapp$

Nåväl, jag är inte helt nöjd med resultatet. Det är lite svårläst med en massa html-taggar i filen och googlar en smula och får tipset om ett program som heter html2text. Jag får en del andra tips också, ett som inte riktigt funkade med den här filen och ett som jag aldrig brydde mig om att testa. http://www.unix.com/linux/45584-how-remove-only-html-tags-inside-file.html. Kanske hade jag hittat något ännu bättre om jag hade googlet lite till.

urban@yoda:~/labbmapp$ html2text
Programmet ”html2text” är för närvarande inte installerat.  Du kan installera det genom att ange:
sudo apt-get install html2text
bash: html2text: kommandot hittades inte

Installera programmet html2txt

Okej, det ingår tydligen inte bland standardprogrammen, men det ser ut att finnas i ubuntus förråd, så det går att installera väldigt enkelt. För att installera program måste vi höja upp vår behörighet till systemadministratören roots nivå. Det gör man med kommandot sudo. Observera att vi nu tar på oss superkrafter och därmed måste vara extra försiktiga med vad vi gör. Använd aldrig sudo om du inte vet vad du gör och tar det väldigt lungt!

Du måste skriva ditt lösenord. Tänk på att det inte syns någonting på skärmen när du skriver. Inga stjärnor eller ”bomber” och självklart inte det lösenord du skriver.

urban@yoda:~/labbmapp$ sudo apt-get install html2text
[sudo] password for urban:
Läser paketlistor… Färdig
Bygger beroendeträd
Läser tillståndsinformation… Färdig
Följande NYA paket kommer att installeras:
html2text
0 uppgraderade, 1 nyinstallerade, 0 att ta bort och 0 ej uppgraderade.
Behöver hämta 87,6kB arkiv.
Efter denna åtgärd kommer ytterligare 270kB diskutrymme att användas.
Läs:1 http://se.archive.ubuntu.com hardy/main html2text 1.3.2a-3build2 [87,6kB]
Hämtade 87,6kB på 0s (283kB/s)
Väljer tidigare ej valt paket html2text.
(Läser databasen … 159492 filer och kataloger installerade.)
Packar upp html2text (från …/html2text_1.3.2a-3build2_i386.deb) …
Ställer in html2text (1.3.2a-3build2) …

urban@yoda:~/labbmapp$

Kommandot html2text har jag aldrig använt förut, så jag konsulterar programmets manualsida med kommandot man html2txt först, men det tar vi upp en anan gång.

Nu måste vi tanka filen igen, men det gör ju inte så mycket i dessa bredbandets tidevarv.Observera att vi nu helt rått sabbar den gamla versionen av kapitel_1 igen! Ingen skada sked dock eftersom vi har råmaterialet kvar.

Hämta en webbsida som text

urban@yoda:~/labbmapp$ html2text http://runeberg.org/rodarum/01.html > 01.txt
urban@yoda:~/labbmapp$ iconv -f iso8859-1 -t utf-8 01.txt >kapitel_1
urban@yoda:~/labbmapp$ less kapitel_1

Det där större-än-tecknet, >, betyder att man omdirigerar något jox som egentligen skulle hamnat på skärmen till en fil i stället och det är ofta praktiskt.

Nu tror jag det räcker för en stund. Vi bör nu ha en fin läsbar version av det första kapitlet i vår mapp. Nästa gång ska vi leka lite med den filen. Vi har nu skapat en mapp, laddat hem en fil från en webbsida, konverterat den till ett annat format, förvandlat oss till superanvändare, installerat ett program, laddat hem filen igen och sedan återigen konverterat filen.

Jag ser att ett och annat kan vara relativt krångligt. Kommentera och fråga om det blir för svårt eller om något av det vi gör inte funkar för dig. Jag vill gärna att alla som är intresserade också hänger med.

Läs även andra bloggares åsikter om Linux, Ubuntu, kommandon, terminalen
[Intressant?]

Annonser


One Response to “Ta kommandot (10) — Skapa katalog, installera program, hämta filer från webben och en del annat”

  1. 1 Samuel

    När jag ska hämta ned htmlsidan som text klagar den på att den inte går att öppna inputfeil:

    html2text http://runeberg.org/rodarum/01.html > 01.txt
    Cannot open input file ”http://runeberg.org/rodarum/01.html”.

    Provade att bara konventera den gamla hämtade filen och sen göra:
    iconv -f iso8859-1 -t utf-8 01.txt >kapitel_1
    men då blev inte filen särskilt läsbar.


Kommentera

Fyll i dina uppgifter nedan eller klicka på en ikon för att logga in:

WordPress.com Logo

Du kommenterar med ditt WordPress.com-konto. Logga ut / Ändra )

Twitter-bild

Du kommenterar med ditt Twitter-konto. Logga ut / Ändra )

Facebook-foto

Du kommenterar med ditt Facebook-konto. Logga ut / Ändra )

Google+ photo

Du kommenterar med ditt Google+-konto. Logga ut / Ändra )

Ansluter till %s


%d bloggare gillar detta: