Unix help

Unix kent zowel een 'Grafische interface' als een 'Command Line Interface.' *)beide begrippen staan in je Lesmap, in de woordenlijst.

Deze machine heeft alleen een Command Line Interface; de Grafische Interface is niet geinstalleerd. Met de Command Line Interface kun je de machine van een afstand bedienen. Onder Unix type je dan de commando's 'op de prompt', net als in DOS. Elk commando is feitelijk een klein programmaatje.

Achter veel commando's kun je zogenaamde 'opties' plaatsen. Daarmee dwing je het programma zich op een bepaalde manier uit te voeren, bijvoorbeeld de 'output' op een bepaalde manier te sorteren: bijvoorbeeld: het nieuwste bestand in een lijst als eerste te tonen.

Ook kun je commando's 'stapelen', je laat de computer dan verschillende dingen achter elkaar (well.. eigenlijk: tegelijk..) doen, dus: verschillende bewerkingen uitvoeren op bijvoorbeeld een bestand.

Lijst van eenvoudige commando's:

 

passwd

Hiermee verander je je wachtwoord. Je vult eenmaal het oude wachtwoord in, en tweemaal het nieuwe.

date

Toont de datum en tijd van de systeemklok.

cd [directorynaam]

ga naar de aangegeven directory.

cd [directorynaam]/[subdirectorynaam]/[subsubdirectorynaam]/

ga naar de aangegeven subsub-directory.

cd ..

ga naar een directory hoger.

who

Toont welke gebruikers er nog meer 'online' zijn op de machine.

mesg y

Verzoeken tot conversatie accepteer je vanaf nu.

mesg n

Verzoeken tot conversatie weiger je vanaf nu.

write [+naam van andere gebruiker]

Start een dialoog met een andere gebruiker. Probeer je 'wite' en krijg je als antwoord 'you have write permission turned off,' dan heb je zelf 'mesg n' aan staan. Je kunt 'mesg y' -berichten accepteren- aanzetten met 'mesg y'. Alles tot aan CTRL-D komt terecht in het venster van de andere gebruiker.

[CTRL] d

Controll-toets + D-toets sluit je tekst-stroom af. Stuurde je bijvoorbeeld tekst via 'write', dan beëindigt CTRL-D het 'writen' naar die andere persoon.

[CTRL] c

Controll-toets + C-toets onderbreekt je laatste actie. Stel dat je een eindeloze lijst ziet voorbijkomen na het commandootje 'ls' dan kun je die listing stoppen met CTRL-C

pwd

Toont het 'pad' naar de actuele directory: de directory waar je je nu bevindt.

ls

Toont de bestanden in de huidige directory.

ls -a

Toont ook de onzichtbare bestanden in de huidige directory. Onzichtbare bestanden hebben onder Unix een naam die begint met een '.' -punt.

ls -l

Toont de toegangs-permissies van de zichtbare bestanden in de huidige directory.

ls -la

Toont de toegangs-permissies van alle bestanden -ook de onzichtbare bestanden- in de huidige directory.

ls -t

Toont de bestanden in de huidige directory, op chronologische volgorde, het nieuwste bestand als eerste.

ls *html

Toont alle bestanden met een naam die eindigt op 'html'. Dit * is een zogenaamde wildcard, en kun je op veel plekken gebruiken. Stel dat je bijvoorbeeld 'ls a*' intypt, dan volgt er een lijst van alle bestanden die beginnen met 'a'.

rm [bestandsnaam]

verwijdert het aangegeven bestand.

rm *

verwijdert alle bestanden in de directory. (Gevaarlijke optie dus..)

rm -r [directory-naam]

verwijdert de directory met alle bestanden in daarin. (Nog gevaarlijker optie dus..)

mkdir [directorynaam]

maakt een directory met de naam die je aangeeft.

rmdir [directorynaam]

verwijdert alleen een directory, wanneer die leeg is.

man ls

'man' toont altijd de "manual page" (gebruiksaanwijzing) van het commando. Bij 'man ls' vindt je dus informatie over alle opties van het commando ls.

man man

toont helaas niet de manual page van mannen ;-) Maar wel de gebruiksaanwijzing van de manual pages.

chmod g-r,o-r [bestandsnaam]

Wijzigt de toegangs-permissies; niemand, behalve de eigenaar van het bestand zelf, kan het nu nog lezen. 'ls -l' toont de bestandspermissies, in de eerste kolom.

De bestands-toegangs-permissies zijn alsvolgt ingedeeld:

-rwxrwxrwx

Dit bestand is leesbaar (r), schrijfbaar (w), uitvoorbaar (x) voor:

  • de gebruiker (u) - de eerste 3 karakters 'rwx'
  • de groep waar hij inzit (g) - de tweede 3 karakters 'rwx'
  • alle anderen (o) - de laatste 3 karakters 'rwx'

door 'chmod' (change mode) in te voeren voor een bestand, en daarna de modus aan te geven, bijvoorbeeld 'g-x' ('group mag niet meer uitvoeren') of: 'g+x' ('group mag wel uitvoeren') of: 'g+w' ('group mag nu schrijven') wijzig je de bestandspermissies.

Je zult dit commando zeer veel tegenkomen wanneer je op/voor Internet werkt, en je bestanden toegankelijk wilt maken voor je bezoekers.

Precies hetzelfde doe je op een Mac, door in 'Samengebruik' aan te geven dat niemand een bestand mag 'verplaatsen of hernoemen.'

w

toont het totaal aantal gebruikers, hun naam, wat ze op dat moment (ongeveer) aan het doen zijn, en hoeveel 'load' (belasting van de machine) dat veroorzaakt op de machine. Is het 'load'-gemiddelde hoger dan 1, dan zijn er processen (draaiende programmaatjes van gebruikers dus), die even wachten op tijd van de processor.

uptime

toont de tijd dat de machine aan is, 'up' is, en de gemiddelde 'load' op de machine.

cp [bestandsnaam] [nieuwe bestandsnaam]

kopieert een bestand naar het nieuwe bestand, met de naam die je aangeeft.

mv [bestandsnaam] [nieuwe bestandsnaam]

geeft een bestand een nieuwe naam.

mv [bestandsnaam] [directorynaam]

verplaatst een bestand naar een andere directory.

cat [bestandsnaam]

stuurt de inhoud van een bestand naar het (beeld)scherm.

cat [bestandsnaam] > [nieuwe bestandsnaam]

stuurt de inhoud van een bestand naar een nieuw bestand.. Is hetzelfde als 'cp' -copy- dus..

wc < [bestandsnaam]

'wordcount' telt het aantal regels, woorden, en tekens in een bestand. Geeft 3 getallen, die resp. staan voor aantal regels, aantal woorden, en aantal tekens.

wc [bestandsnaam]

identiek aan 'wordcount' met < -teken; telt het aantal regels, woorden, en tekens in een bestand. Geeft 3 getallen, die resp. staan voor aantal regels, aantal woorden, en aantal tekens. Het < -teken gebruik je in sommige gevallen voor de duidelijkheid.

cat [bestandsnaam] | wc

identiek aan 'wordcount'; telt het aantal regels, woorden, en tekens in een bestand. Geeft 3 getallen, die resp. staan voor aantal regels, aantal woorden, en aantal tekens. Je gebruikt hier het | [pipe]-teken, waarmee je de uitkomst van 1 opdracht (cat), doorgeeft aan een volgende opdracht (wc).

cat [bestandsnaam] | wc > [nieuwe bestandsnaam]

slaat de 3 getallen van de 'wordcount' op in een nieuw bestand.

wc -w

telt alleen het aantal woorden in het bestand.

wc -l

telt alleen het aantal regels in een bestand.. Let op: wc telt hier het aantal harde returns, heb je 1 zin zonder return aan het eind, dan is de output dus 0.

wc -c

telt alleen het aantal karacters (bytes) in een bestand.

grep [woord] *

doorzoekt alle [*] bestanden van de huidige directory naar het opgegeven woord. Als 'output' geeft 'grep' dan de naam van het bestand, en de zin(nen) waarin het woord voorkomt.

Klinkt het onzinnig? Ja, mee eens :-) Toch is het een redelijk adequate methode om uit te vinden welke web-bestanden op een webserver je moet editten, wanneer er iets in voorkomt dat je er beslist uit wilt hebben. Sterker nog, met een paar stappen verder, schrijf je een klein scriptje dat alle bestanden voor je doorzoekt, en het woord vervangt door een ander woord.

grep [woord] [bestandsnaam]

doorzoekt het opgegeven bestand op het opgegeven woord. Als 'output' geeft 'grep' dan de zin(nen) waarin het woord voorkomt.

grep [woord] [bestandsnaam] | wc

doorzoekt het opgegeven bestand op het opgegeven woord, en stuurt de output, -de zin(nen) waarin het woord voorkomt- door naar 'wc' -wordcount. De uiteindelijke output die je in beeld krijgt, zullen dus 3 getallen zijn, het aantal regels -waarin dat woord voorkomt-, het aantal woorden dat die zinnen bevatten, en aantal tekens van al die zinnen.

grep [woord] [bestandsnaam] | wc -l

doorzoekt het opgegeven bestand op het opgegeven woord, en stuurt de output, -de zin(nen) waarin het woord voorkomt- door naar 'wc' -wordcount. Wordcount telt nu alleen het aantal regels waarin het woord voorkomt. Dus de output is een getal, dat gelijk is aan het aantal regels waarin het woord 1 of meer keer ;-( voorkomt.

grep [woord] [bestandsnaam] | wc -l > [nieuwe bestandsnaam]

doet exact hetzelfde als de vorige opdracht, maar slaat de output nu op in een nieuw bestand.

top

toont alle processen op de computer. En ververst regelmatig het scherm. Dit lijkt dus op.... 'Over deze Computer' op de Mac, onder het Appeltje in de Finder. Je ziet hier alleen iets meer: je ziet bijv. het geheugenbeheer, welke processen 'staan te slapen,' -wachten op input- en vooral: welk proces de computer het zwaarst belast.

ps -aux

lijkt op 'top.' Het toont welke processen er draaien, en onder welk nummer [Proces ID of 'PID'] ze actief zijn. Je gebruikt dit commando als systeembeheerder om te achterhalen welk PID een proces heeft, om het bijvoorbeeld af te schieten met 'KILL' of te herstarten met 'KILL -HUP.'

ln -s [bestandsnaam] [linknaam]

maakt een alias aan van het aangegeven bestand, en geeft die alias de naam [linknaam].

ln -s [bestandsnaam] [directorynaam]/[linknaam]

maakt een alias aan van het aangegeven bestand, plaats die alias in de aangegeven directory, en geeft die alias de naam [linknaam].

Dit kan bijzonder handig zijn, wanneer je besluit een oude URL [dus een oude HTML-pagina] niet meer te gebruiken, maar toch een verwijzing wilt plaatsen naar de nieuwe plek op je website.

du

toont de omvang van de directory waarin je staat.

df

toont hoeveel ruimte er in totaal aanwezig is op de harddisk.

joe [bestandsnaam]

start een eenvoudige tekstverwerker, en edit het aangegeven bestand. In de onderstaande afbeeldingen vind je enkele commando's van 'joe':







vi [bestandsnaam]

start een complexe tekstverwerker, en edit het aangegeven bestand. 'vi' is anno 2000 af te raden, tenzij je de geek-status wilt bereiken ;-)

mail [gebruikersnaam]

start een e-mail aan de aangegeven mede-gebruiker. 'mail' vraagt om een subject. Wanneer je dat hebt ingevuld, kun je je tekst typen. 'mail' is echter heel simple, je kunt alleen 1 zin backspacen als je een fout maakt. Beëindig je mail met een '.' [punt] op een lege regel.
Op sommige unixsystemen moet je het programmaatje nog beëindigen met [CTRL] D.

mail -v [gebruikersnaam]

zelfde als vorige commando, alleen laat de computer nu zien wat hij doet.

mail

haalt je mail op binnen de computer. Beëindig het lezen van je mail met [CTRL] D.

"Aaaargh..."

Heb je het helemaal gehad en geen zin om dit te leren? Geen nood, het is geen 'must.' Kennis van unix is niet noodzakelijk om een website te kunnen maken of onderhouden, het is alleen heel handig daarbij, omdat de meeste websites (niet alle) onder unix 'gehost' worden. Zeker wanneer je webscripting wilt gebruiken, PHP bijvoorbeeld, kan de kennis je goed van pas komen. Heb je enorme zin dit te leren? Doen! If not, geen nood. Je kunt scripting uitbesteden en de permissies van je scripts goed zetten met je FTP-client.







# uname -a FreeBSD 192.168.1.59 4.0-RELEASE FreeBSD 4.0-RELEASE #0: Mon Mar 20 22:50:22 GMT 2000 root@monster.cdrom.com:/usr/src/sys/compile/GENERIC i386



© Jolie GMIA 2000, 2001