Terminal 2 — Denne posten er skrevet av malinux —
Dette er andre post i terminalserien.
Denne gangen skal jeg se nærmere på ls-kommandoen, beskrevet i posten Terminal 1, og hvordan vi kan endre hvordan den viser innholdet etter hvilke flagg vi bruker.
Videre vil jeg gå igjennom hvordan man oppretter nye kataloger/mapper.
Samt noen flere eksempler med cd-kommandoen, også beskrevet i Terminal 1
For å bli mer effektiv i terminalen, anbefales det å lese dette tipset om tabfullfør i terminalen
Om du skriver kommandoen under
ls --help
så vil du få en liste som ligner den her:
Det som da har hendt, er at innholdet fra ls --help er så omfattende at ikke alt vises på terminalen samtidig. For å kunne scrolle i innholdet skriver man følgende:
ls --help | less
som gir meg muligheten til å vise innnholdet fra toppen. Jeg kan nå scrolle nedover med j, eller piltast ned, og opp igjen med k, eller piltast opp.
Som vi ser, så er det mange muligheter med ls-kommandoen. Jeg kommer til å forklare de vanligste flaggene, da ls i seg selv er mer omfattende, som gjør den brukbar ved veldig spesielle behov.
Derfor kommer jeg kun til å forklare og gå igjennom de vanligste jeg bruker selv.
Der det det står f.eks. -a, --all så betyr det rett og slett at du kan enten bruke -a eller --all, men du kan f.eks. ikke skrive ls -a, --all slik:
malinux@lillablogg:~$ls -a, --all
Det kan vi se resultatet av her:
- ls -a --all - betyr at den viser filer som starter på . (punktum), f.eks. .bash_history vises ikke om vi kjører kun ls, men vises når vi kjører ls -a. Dette kalles gjerne skjulte filer.
Her er et eksempel:
- ls -l - betyr at den skal ha et langt visningsformat. Den presenterer innholdet som en liste med informasjon om rettigheter til skriving og lesing om filen, til størrelse og hvilken dato og klokkeslett filen eller mappa sist ble endret.
Her ser vi et eksempel på et slikt langt visningsformat
- ls -h - denne betyr at den skal vise innholdet i et menneskevennlig format. Det er fordi det regnes som umenneskelig å konvertere 8980 bytes, som er størrelsen på den examples.desktop-fila, til kilobytes i hodet, som øvrig er tinærmet lik 8.8kilobytes.
Denne kommandoen bør kjøres sammen med -l flagget, fordi -h alene ikke gir noen annen info enn hva som ligger i mappen.
Vi ser at vi kan kombinere flagg på denne måten:
Vi ser også at 8980bytes altså var 8.8K, eller 8.8 kilobytes.
Vi kan altså kombinere flere flagg, og om vi også vil se hvor stor plass, eller hvem som eier de skjulte filene, så skriver vi ls -lha
Skjulte filer
Dette gjør at vi får opp informasjon om skjulte filer også, de som starter med punktum, fordi vi bruker -a flagget.
Videre får vi opp størrelser i et mer menneskelig format, fordi vi har på -h flagget.
Vi får opp informasjon om brukerrettigheter, og eierinformasjon, dato og klokkeslett fordi vi har med -l flagget.
Om du nå har lurt på. Hm, men hvordan kan jeg se størrelsen på katalogene? De er vel ikke på 4 kilobytes, alle sammen? Ja, og nei, fordi den viser størrelsen på hva en tom mappe tar på disken/ssd-en, uavhengig av om mappen faktisk er tom eller ikke.
Problemet er at det ikke ser ut til at ls har noen funksjon, som viser dette på noen fin måte. Derimot har vi kommandoen du, disk usage, eller diskbruk på norsk.
du -h --max-depth=0 *
- * - betyr alt i mappen vi står i. Vanligvis i mappen /home/dittbrukernavn/.
I mitt tilfelle er dette /home/malinux/, da det er mitt brukernavn. - --max-depth=0 - betyr at den sjekker til den når bunnen i mappe/katalog-hiarkiet og viser totalsummen av hvor mye mappen inneholder.
Det gjør den fordi vi har satt inn verdien 0, som får den til å summer innholdet av alle undermapper den finner. Den øverste mappen i hiarkiet vises.
Her er to eksempler. Forskjellen mellom de to kommandoene, er at den nederste har -h for human, eller menneskelig visning av størrelsen. Ved å legge til -a, all, eller alle, tar med størrelsen for både filer og kataloger/mapper.
Nå kan vi se at mappen Nedlastinger ikke er tom, da den inneholder noe på 997 megabytes.
For å se et begrenset antall nivåer innover i mappestrukturene, for å se hva som befinner seg der, skriv et tall større enn 0, der alle tall større enn 0 betyr antall nivåer nedover i mappehiarkiet:
Eksempel på hvordan titte på hva som er i første nivå i mappen Nedlastinger:
du -ha --max-depth=1 Nedlastinger/
Vi ser at mappen Nedlastinger inneholder en fil som heter ubuntu-14.02.2-desktop.amd64.iso, og at mappen totalt sett er like stor som den iso-filen.
man kan også se innholdet i mappen med ls-kommandoen.
ls -lh Nedlastinger
Her viser den også innholdet i mappen Nedlastinger, og viser størrelsen på fila, som ligger i mappen. Denne gangen får vi ikke sett eventuelle skjulte filer, da -a flagget ikke er med.
Når vi nå skal opprette en ny mappe i terminalen, fordi vi ikke vil ha isofila i Nedlastinger-mappa. en fil som har et filnavn som ender på iso, betyr at det er et diskavtrykk. Et diskavtrykk er en nøyaktig kopi av disk, slik som for eksempel en dvd, lagret på disk/ssd. Et slikt diskavtrykk kan f.eks. brennes til en dvd-plate, eller skrives til en usb-minnepinne. Noe jeg kan gå igjennom i et senere blogginnlegg.
Jeg gir mappen et navn, som er kort, men som lett kan si noe om hva den inneholder. For å opprette mappen, gjøres dette slik:
mkdir Diskavtrykk
Når vi kjører ls -lh på den nye mappen får vi informasjon om at den ikke inneholder noe, da den sier at totalen er 0.
ls -lh
For å sjekke om mappen inneholder noen skjulte filer, kan vi kjøre:
ls -lha Diskavtrykk
Her ser vi noe rart. Det er noe skjult i mappen, som opptar 8 kilobytes. Det er jo ikke mye plass, men hva er dette? Dette noe, ser sånn her ut:
drwxrwxr-x 2 malinux malinux 4,0K mars 28 23:25 .
drwxr-xr-x 19 malinux malinux 4,0K mars 28 23:28 ..
Det er disse punktumene jeg tenker på.
- . (punktum), betyr denne mappen. . inneholder informasjon om hvilke, og hvor mange filer og mapper, mappen inneholder. Tallet 2 betyr at det er 2 oppføringer i Nedlastinger-mappen.
- .. (to punktum), betyr forrige mappe i hiarkiet. .. inneholder informasjon om informasjon om mappen, som ligger over i hiarkiet. tallet 19, betyr at forrige mappe inneholder 19 elementer.
Navigere i kataloghiarkiet
I forrige terminal-post, forklarte jeg hvordan vi beveger oss bortover i katalog-hiarkiet med kommandoen cd. Det jeg ikke forklarte var hvordan man kommer seg tilbake igjen der man var.
- cd . - endre katalog til katalogen vi står i nå. Helt unødvendig i praktisk bruk, da du ikke kommer av flekken.
- cd .. - endre til katalogen over oss/før oss i hiarkiet.
For eksempel står du i /home/dittbrukernavn/Diskavtrykk og skal til /home/dittbrukernavn så gjøres dette som du ser på bildet:
Vi er nå tilbake til standardposisjonen, som er /home/dittbrukernavn
Om du uavhengig av hvor i hiarkiet du er, men vil helt tilbake til standardposisjon, så skriv bare cd. Da vil den automatisk få deg tilbake til standardposisjonen.
Slette mapper
Da Diskavtrykk-mappen er tom, kan den slettes slik:
rmdir Diskavtrykk
- rmdir - rm, som i remove, dir, som i directory, eller remove directory. Fjerner mappen om den er tom. Mappen regnes som tom om den ikke inneholder mer enn . og .., slik vi så lenger oppe i denne posten.
Er den ikke tom, slettes den slik:
rm -R Diskavtrykk
- rm - remove. fjerne. Kommando som fjerner filer eller mapper.
- rm -R - betyr at den skal fjerne filer og kataloger rekursivt. Dette betyr at kommandoen fjerner mappen Diskavtrykk, samt alle undermapper og filer. Dette er en funksjon man bør tenke seg om et par ganger før man kjører, så man ikke sletter filer, eller mapper man faktisk ønsker å ha.
Vi ser at den siste kommandoen feiler, fordi mappen Diskavtrykk ble slettet med rmdir-kommandoen.
I neste post, nemlig Terminal 3, tenkte jeg i hovedsak å gå igjennom:
- Flytte og kopiere filer
- Flytte og kopiere mapper
- rm-eksempler
Kilder:
http://info.ee.surrey.ac.uk/Teaching/Unix/
http://manpages.ubuntu.com/manpages/trusty/en/man1/ls.1posix.html
http://manpages.ubuntu.com/manpages/trusty/en/man1/du.1.html
http://manpages.ubuntu.com/manpages/trusty/en/man1/cd.1posix.html
http://manpages.ubuntu.com/manpages/trusty/en/man1/mkdir.1.html
http://manpages.ubuntu.com/manpages/trusty/en/man1/rmdir.1.html
http://manpages.ubuntu.com/manpages/trusty/en/man1/rm.1fun.html
Categorised as: Bash | Terminal
Leave a Reply