Linux CLI 2

Linux CLI 2

31/10/2020 – In dit tweede deel van de Linux Command Line Interface (CLI) leggen we enkele basis commando’s uit.

Het eerste deel kun je lezen onder Linux CLI 1.

ls

ls is simpelweg de afkorting voor “list” (lijst). Het ls commando toont de inhoud van uw huidige werkdirectory en is één van de meest gebruikte commando’s in Linux. Mogelijk is dit het eerste commando dat je zal gebruiken. We kunnen eveneens een aantal optionele parameters toevoegen aan ls, we overlopen hieronder een aantal voorbeelden:

Let op: ls tik je in kleine letters (bij hoofdletters krijg je een foutmelding):

ls zonder extra parameters toont je bestanden en mappen zonder verdere details:

Let op: Ook de parameters hebben een verschillende betekenis als je ze gebruikt in kleine letters of hoofdletters.  

ls -l

Hier toont ls -l de bestanden en/of mappen. We zien met de extra parameter ” -l ” meteen ook meer details zoals rechten, eigenaar, bestandsgrootte, …

ls -lh

De toegevoegde parameter “h” staat voor “human readable”. Zoals u kon zien staan de bestandsgroottes bij ls -l uitgedrukt in bytes. De optie “h” zorgt ervoor dat de bestandsgroottes in een makkelijker leesbaar formaat wordt getoond:
K = kilobyte, M = megabyte, G = gigabyte, …

ls -a

Wanneer we ook de zogenaamde verborgen bestanden willen zien koppelen we “ a ” als parameter:

ls -a

ls --help

Er zijn nog veel meer parameters mogelijk om uw commando te verfijnen. Deze kun je allemaal terug vinden onder de ingebouwde handleiding ls --help.

pwd

pwd (kleine letters) staat voor Print Working Directory.  Met dit commando kom je dus te weten in welke directory (map) je aan het werken bent, het volledige pad wordt getoond:

pwd

cd

cd staat voor Change Directory.  Het stelt u in staat om te navigeren vanaf de command line.  Enkele voorbeelden:

cd /usr/bin

brengt u naar een specifieke directory, in dit geval de directory /usr/bin

cd ..

brengt u een stapje terug, je komt in de directory /usr terecht

cd

brengt u terug naar uw home directory /home/username

cd -

brengt u terug naar de vorige directory, in dit voorbeeld /usr

mkdir

mkdir staat voor Make Directory, we kunnen dus nieuwe mappen aanmaken.  Stel dat we de map testdir willen maken, dan doen we dit zo:

mkdir testdir

Willen we binnen de directory testdir de mappen dir1 en dir2 aanmaken dan kunnen we dit zo:

cd testdir
mkdir dir1 dir2

mv

mv wordt gebruikt om bestanden en mappen te verplaatsen of te hernoemen.  Stel dat we de map dir1 willen hernoemen naar dir3 dan doen we dit zo:

mv dir1 dir3

Nu hebben we de mappen dir2 en dir3, stel dat we dir2 nu willen verplaatsen binnen dir3 dan gebruiken we dezelfde syntax maar met een andere uitkomst:

mv dir2 dir3

Nu hebben we de map dir3 met daarin de map dir2, dus /dir3/dir2 .  Het is dus van belang dat je goed weet welke mappen er al dan niet aanwezig zijn.
Hetzelfde kan toegepast worden op bestanden, mv kan gebruikt worden om te hernoemen of te verplaatsen.

cp

cp wordt gebruikt om bestanden en mappen te kopiëren. Stel dat we het bestand passwd vanuit de map /etc willen kopiëren naar de map waarin we nu werken, dan doen we dit zo:

cp /etc/passwd .

het “ . ” wijst hier dus de Current Working Directory aan.

rm

rm staat voor remove, het commando kan bestanden en mappen verwijderen.  Als we binnen de huidige directory het bestand passwd terug willen verwijderen kan dit zo:

rm passwd

Wanneer we een map willen verwijderen kunnen we in principe dezelde syntax gebruiken.  Echter als de map niet leeg is zul je volgende foutmelding krijgen:
rm: kan ‘directory’ niet verwijderen: Is een map
Om een map te verwijderen die niet leeg is dient men de parameter -r te gebruiken:

rm -r directory

Rechten

Wanneer we ls -l gebruiken zien we de zogenaamde toegangsrechten:

ls -lh rights

Het eerste teken geeft het type aan.  Als het eerste karakter een ” ” toont betreft dit een bestand, wanneer dit een ” d ” toont is het een directory.  We zien dus in bovenstaand voorbeeld de directory testdir en de bestanden testfile.txt en testfile2.txt .

De volgende drie karakters zijn de toegangsrechten voor de eigenaar van het bestand, de daarop volgende drie karakters zijn de toegangsrechten voor leden van de groep en de laatste drie karakters zijn de toegangsrechten voor alle anderen.

RWX rights

r staat voor read – leesrechten
w staat voor write – schrijfrechten
x staat voor execute – uitvoeringsrechten
staat voor geen enkele van de opgesomde opties (voorbeeld r-x geeft lees- en uitvoeringsrechten, maar geen schrijfrechten)

chmod

Om de modus (machtigingen) van een bestand of map te wijzigen, wordt het commando chmod (Change Mode) gebruikt. Hou er rekening mee dat alleen de eigenaar van het bestand of de superuser de modus van een bestand of map kan wijzigen .

chmod ondersteunt twee verschillende manieren om modusveranderingen te specificeren: octale nummerweergave of symbolische representatie.

De opties in octale nummerweergave zijn:
7 (rwx)  6 (rw-)  5 (r-x)  4 (r--)  3 (-wx) 2 (-w-) 1 (--x) 0 (---)

Een voorbeeld, stel dat ons bestand testfile.txt de rechten -rw-rw-r– heeft, dus lees- en schrijfrechten voor de eigenaar en groep, voor de anderen enkel leesrechten.  Nu willen we eigenaar en groep rwx toekennen en de anderen enkel r, dit doen we op onderstaande manier :

sudo chmod 774 testfile.txt

We kunnen ook rechten wijzigen met behulp van symbolen:

u = (user) eigenaar | g = (Group) Groep | o = (others) alle anderen | a = (all) u, g en o samen

Enkele voorbeelden:
+x voegt uitvoeringsrechten toe voor iedereen
u+x voegt uitvoeringsrechten toe voor de eigenaar van het bestand
o-x verwijdert de uitvoeringsrechten van de anderen

Stel dat het bestand testfile.txt de rechten -rw-rw-r– heeft en we willen iedereen uitvoeringsrechten toekennen, dan kan dit zo:

sudo chmod +x testfile.txt

Het bestand heeft nu de rechten -rwxrwxr-x

Tot zover de inleiding voor het gebruik van de terminal.  Wie graag meer wil leren kan ik het boek The Linux Command Line aanraden.

Share this post