PADNAMEN IN UNIX

1. Er zijn in Unix 2 typen padnamen:

afile adir Relatieve padnamen
./afile ./adir Relatieve padnamen
/afile /adir Absolute padnamen

Een relatieve padnaam is relatief t.o.v. de huidige directory.
Voorbeeld:
$ pwd
/home/user1
# Wat is de huidige directory?
$ cd adir # Ga naar de directory "adir" relatief
# t.o.v. de huidige directory.
$ pwd
/home/user1/adir

Het pad "./afile" is ook relatief. Zie verder onder 3.

Een absolute padnaam begint met "/".
Een absolute padnaam wijst altijd naar de top (/) van de Unix directory hierarchie.
Er is dus maar 1 "/afile" in het hele systeem.
Voorbeeld:
$ pwd
/home/user1
# Wat is de huidige directory?
$ cd /adir # Ga naar de directory "/adir".
$ pwd
/adir

2. Bijzondere directories:

. de huidige directory
.. 1 directory omhoog in de hierarchie

De directory "." lijkt op het eerste gezicht misschien nutteloos, maar is dat zeker niet!
Voorbeeld:
$ cp /tmp/afile . # Copieer "/tmp/afile" naar de
# huidige directory.

In MS-DOS mocht je die "." weglaten, in Unix niet!

3. Waarom "./acmd"?

De padnamen "afile" en "./afile" zijn beiden relatief.
Gebruikt als argument achter een commando is er geen verschil tussen beide varianten.
Voorbeeld:
$ cd adir # Ga naar de directory "adir" relatief
# t.o.v. de huidige directory.
$ cd ./adir # Doet precies hetzelfde.

Gebruikt als commando zijn "acmd" en "./acmd" echter niet hetzelfde!
$ acmd # Zoek via $PATH naar programma "acmd".
$ ./acmd # Voer in de huidige directory het
# programma "acmd" uit.

Let op dat in Unix de huidige directory niet standaard in het zoekpad meedoet. (Bij MS-DOS wel.)
De huidige directory doet alleen mee, wanneer deze expliciet in de PATH variabele is opgenomen,
bijv. zo:
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
# Check: wat is het huidige zoekpad?
$ export PATH=$PATH:. # Aanpassen PATH variable.
$ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games:.
# Check: wat is nu het huidige zoekpad?

(De regel export PATH=$PATH:. eventueel in ".profile" of ".bash_profile" opnemen.)

WAARSCHUWING: Neem "." nooit in PATH op voor user "root"!
Dit verhoogt de kans op onbedoeld uitvoeren van gebruikers-programma's
tijdens systeembeheertaken (Trojan horses).



Copyright (C) 2003 Integrated Services; tux4u.nl
Author: Ing.J.M.Waldorp
pathnames_nl.html 20030402