MakeLink
| Formát: | MAKELINK [FROM] <odkaz> [TO] <soubor nebo adresář> [SOFT] [HARD] [FORCE] |
| Šablona: | LINK=FROM/A, FILE=DIR=DIRECTORY=TO/A, SOFT/S, HARD/S, FORCE/S |
| Účel: | Vytváří zástupce mezi soubory a adresáři |
| Cesta: | C:MAKELINK |
Příkaz MAKELINK vytvoří na disku speciální soubor, který je zástupcem souboru nebo adresáře jiného. Tento soubor (anglicky nazývaný link) je ukazatel na jiný soubor, funguje tedy jako jeho zástupce.
Existují dva typy odkazů. Hard links (pevné odkazy) a soft links (měkké odkazy).
Pevný odkaz (hard link) je jistá forma „fyzického“ odkazu zpracovaného samotným souborovým systémem, který ukazuje na fyzické umístění (např. blok na disku) cílového souboru nebo adresáře. To znamená, že jak odkaz tak i cílový soubor (nebo adresář) se musí nacházet na stejném svazku. Takže přejmenování cílového souboru (včetně přejmenování do jiného adresáře) nemůže „přerušit“ odkaz , který bude i nadále ukazovat na stejný objekt. Dokonce ani odstranění cílového souboru nezpůsobí problém. Odkaz bude nahrazen souborem nebo adresářem dříve, než bude odstraněn. Samozřejmě pevné odkazy nepodporují všechny souborové systémy.
Měkký odkaz je jistá forma „logického“ odkazu zpracovaného souborovým systémem, knihovnou dos.library a aplikacemi, který ukazuje na název, který popisuje cestu k cílovému souboru nebo adresáře. Lze použít všechny typy cest (absolutní a relativní, s nebo i bez názvu souboru). To znamená, že jak odkaz, tak i cílový soubor mohou být umístěny na různých svazcích a že přejmenování nebo smazání cílového souboru „zruší“ odkaz (bude ukazovat na již neexistující objekt).
Staré aplikace si někdy nejsou vědomy měkkých odkazů a budou je považovat za adresáře nebo je ignorovat úplně. Měkké odkazy nepodporují všechny systémy souborů. Staré souborové systémy mohou mít také problémy s relativními názvy cest v měkkých odkazech ("/// dir2 / file3"). Některé aplikace mohou mít problémy s „nefunkčními“ měkkými odkazy, pro které příslušné cílové soubory již neexistují.
Ve výchozím nastavení nebo při zadání klíčového slova SOFT se příkaz MAKELINK pokusí vytvořit měkký odkaz (soft link). Když je zadáno klíčové slovo HARD, potom se příkaz MAKELINK pokusí vytvořit pevný odkaz (hard link). Všimněte si, že výchozí chování se změnilo od verze 53.3+.
Při vytváření měkkých odkazů, pokud je cílová cesta relativní (tzn. cesta neobsahuje název svazku nebo zařízení), se ho příkaz MAKELINK pokusí vytvořit vzhledem k adresáři, který bude odkaz obsahovat. Nevytvoří jej vzhledem k aktuálnímu adresáři jako ostatní příkazy. Viz příklady níže.
Při vytváření pevného odkazu (hard link), kdy použití argumentu TO obsahuje název adresáře, pak příkaz MAKELINK obvykle neumožňuje vytvoření pevného odkazu na tento adresář. Toto umožňuje až použití argumentu FORCE.
Při vytváření měkkého odkazu (soft link) by měl cílový soubor odkazu existovat. Pokud tomu tak není, bude to příkaz MAKELINK považovat za chybu. Někdy je však nutné vytvořit měkký odkaz dříve, než bude samotný cílový soubor daného odkazu zpřístupněn. V takovém případě klíčové slovo FORCE způsobí, že příkaz MAKELINK vytvoří měkký odkaz bez ohledu na to, zda cílový soubor existuje nebo ne.
Příklady
| SYS:> MakeLink RAM:Link S/User-Startup SOFT |
vytvoří měkký odkaz na RAM:S/User-Startup (tento soubor musí existovat) a ne na SYS:S/User-Startup, jak by se dalo očekávat.
| SYS:> MakeLink RAM:Link SYS:S/User-Startup SOFT |
vytvoří měkký odkaz na SYS:S/User-Startup (absolutní cesta).



