Tečka s lomítkem, ./ , je relativní cesta k něčemu v aktuálním adresáři.
Tečka je aktuální adresář a lomítko je oddělovač cesty.
Když zadáte příkaz touch ./a řeknete „spusťte touch nástroj s argumentem ./a “ a touch vytvoří (nebo aktualizuje časové razítko) soubor a v aktuálním adresáři.
Mezi touch a není žádný rozdíl a touch ./a protože oba příkazy budou působit na věc zvanou a v aktuálním adresáři.
Podobným způsobem touch ../a bude jednat podle a v adresáři nad aktuálním adresářem jako .. odkazuje na "jeden adresář dále v hierarchii".
. a .. jsou dva speciální názvy adresářů které jsou přítomny v každém adresáři na systémech Unix.
Je užitečné mít možnost zadat ./ někdy před názvem souboru, jako když se pokoušíte vytvořit nebo smazat soubor nebo s ním jen pracovat, jehož první znak v názvu souboru je pomlčka.
Například,
touch -a file
nevytvoří soubor s názvem -a file a ani by
touch '-a file'
Ale,
touch ./'-a file'
by.
./ zápis je užitečný při pokusu o spuštění skriptu nebo jiného spustitelného souboru v aktuálním adresáři. Na rozdíl od příkazového řádku Windows, unixové (a unixové systémy jako Linux) shelly nekontrolují aktuální adresář pro spustitelné soubory před kontrolou PATH proměnná prostředí a systémy Unix obvykle nezahrnují ./ v PATH z bezpečnostních důvodů. Tím, že musíte specifikovat
./executable
spíše než jen
executable
uživatel říká:„ano, dělám chcete spustit tento spustitelný soubor v aktuálním adresáři"
Tomu se říká relativní cesta.
. představuje aktuální pracovní adresář. Pokud se tedy aktuálně nacházíte v /home/jesse , . je jednoduše odkaz na /home/jesse takže když ukážete na ./ skutečně ukazujete na /home/jesse/