Assign

Formát: ASSIGN [<jméno>:{adresář}] [LIST] [EXISTS] [DISMOUNT] [DEFER] [PATH] [ADD] [REMOVE] [VOLS/S] [DIRS] [DEVICES]
Šablona: NAME,TARGET/M,LIST/S,EXISTS/S,DISMOUNT/S,DEFER/S,PATH/S,ADD/S,REMOVE/S, VOLS/S,DIRS/S, DEVICES/S
Účel: Řídí přiřazení logických svazků k fyzickým adresářům
Cesta: C:ASSIGN

Příkaz ASSIGN patří k nejužitečnějším příkazům AmigaDOSu. Umožňuje přiřadit k fyzickým adresářům, jejichž plná cesta může být někdy dost dlouhá, jiné jméno (obvykle krátké), kterým na adresář lze odkazovat přímo, bez cesty. Tento adresář se pak chová jako další svazek, takže o něm lze mluvit jako o logickém svazku.

Podobně jako příkaz ALIAS vytváří synonyma k příkazům, vytváří příkaz ASSIGN synonyma k adresářům. Příkaz ASSIGN tato synonyma tvoří, ruší a též zobrazuje jejich seznamy.

Formát tohoto příkazu je dosti složitý, což je ovšem dáno jeho značnou flexibilitou. Ve verzi pro AmigaDOS 2.x totiž přibylo mnoho nového.

Když zadáte <jméno> a {adresář}, příkaz ASSIGN toto jméno přiřadí zadanému adresáři. Jméno logického svazku vždy musíte zakončit dvojtečkou - stejně jako jména fyzických mechanik. Pokud již bylo <jméno> přiřazeno nějakému adresáři, nový příkaz ASSIGN přepíše původní přiřazení. Pokud zadáte pouze <jméno>, bude stávající přiřazení zrušeno.

K jednomu adresáři můžete přiřadit více logických svazků, když použijete více příkazů ASSIGN (ten bohužel neumí přiřadit několik logických svazků najednou).

Jde to však i naopak - jednomu logickému svazku můžete přiřadit více fyzických adresářů. To umožňuje klíčové slovo ADD. Normálně nové přiřazení adresáře k logickému svazku původní přiřazeni zruší. Přepínač ADD však způsobí, že stávající přiřazení zůstanou zachována a do seznamu přiřazení nový fyzický adresář připojí. Systém pak při použití <jména> prohledává oba fyzické adresáře. Může jich samozřejmě být i více. Pokud není soubor nalezen v prvním adresáři, prohledává i další adresáře.

Klíčová slova DEFER a PATH mohou též ovlivnit způsob tvorby přiřazení logického svazku. Normálně příkaz ASSIGN ihned v době přiřazení hledá zadaný fyzický adresář. To není vždy ale vhodné. Například při startu systému, kdy se provádějí přiřazení příkazy ASSIGN s souborech "s:startup.sequence" a "s:user-startup", nemusí být ještě některé fyzické adresáře dostupné.

Volba DEFER vytváří "opožděná" přiřazení. V okamžiku přiřazení nemusí fyzický adresář ještě existovat, vlastní přiřazení se provede až poté, co bude poprvé použito jméno logického svazku. U čistě disketových systémů si takto můžete ušetřit nepříjemné přehazování disket (například pokud se již vše nevejde na jednu disketu a vy máte třeba fonty na další disketě).

Volba PATH je další modifikací přiřazení. Normálně se přiřazení provádí na konkrétní médium, nikoli na mechaniku. U pevných disků to nevadí, ale u výměnných médií (zatím to jsou především diskety) to může působit problémy. Když totiž logický svazek přiřadíte adresáři na disketě v určité mechanice, bude logický disk vyžadovat vždy tuto disketu, nikoli mechaniku. Avšak pokud užijete klíčové slovo PATH, stačí, když v mechanice bude disketa s příslušným adresářem. Je jedno jaká disketa to bude, takže případná výměna diskety se neprojeví. Například pokud logickému disku "Libs:" přiřadíte adresář "df0:libs", bude stačit, aby na disketě v mechanice DF0: byl tento adresář. Volba PATH se hodí hlavně pro Amigy používající jen diskety, protože nemusíte pokaždé do mechaniky vkládat disketu, z níž jste spustili systém.

Logický svazek můžete opět zrušit klíčovým slovem REMOVE. Logický svazek prostě zmizí, a pokud jej zadáte, objeví se requester se žádostí o vložení média tohoto jména.

Podobná je i volba DISMOUNT. Ta však slouží k odpojování fyzického zařízení nebo disku ze seznamu instalovaných zařízení. Příkazem ASSIGN DISMOUNT tak můžete dopojit třeba určitou mechaniku nebo disk. Bez resetu však zařízení nelze znovu připojit. A kromě toho toto odpojení neuvolňuje systémové prostředky zařízení. Volba DISMOUNT je určena spíše pro programátory, při neopatrném užívání může zhroutit systém.

Příkaz ASSIGN bez argumentů, nebo s klíčovým slovem LIST, vypíše všechna stávající přiřazení logických svazků. Klíčovými slovy VOLS, DIRS a DEVICES můžete výpis omezit pouze na jména svazků, adresářů nebo zařízení (bližší popis těchto termínů viz kapitola 1.7 "Souborový systém").

Pokud bylo logickému disku přiřazeno více fyzických adresářů volbou ADD, zobrazují se i připojené adresáře, jsou uvozeny znaménkem plus (+).

Volba EXISTS umožňuje zjistit, zda existuje zadaný logický svazek. Pokud existuje, příkaz vypíše jméno logického svazku a přiřazený adresář. Pokud ne, příkaz ASSIGN EXISTS to oznámí a nastaví návratový kód 5 (WARN). Toho se využívá nejčastěji v dákových souborech.

Příklad

1> ASSIGN FONTS: MyFonts:Fontdir

Přiřadí logickému svazku "FONTS:" adresář Fontdir ze zařízení MyFonts:

1.System2.0:> ASSIGN Libs: Work:Libs ADD

Tento příkaz zachová původní přiřazení adresáře "Libs: (obvykle "Sys:Libs") a navíc jej doplní o adresář "Work:Libs".

1> ASSIGN LIST

Volumes:
Ram Disk [Mounted]
Workbench2.0 [Mounted]
MyFonts [Mounted]

Directories:
CLIPS                  Ram Disk:Clipboards
ENV                     Ram Disk:Env
T                          Ram Disk:T
ENVARC             Workbench2.0:Prefs/Env-Archive
SYS                     Workbench2.0:
C                          Workbench2.0:C
S                          Workbench2.0:S
L                          Workbench2.0:L
FONTS                MyFonts:Fontdir
DEVS                  Workbench2.0:Devs
LIBS                    Workbench2.0:Libs

Devices:
PIPE AUX SPEAK RAM CON
RAW PAR SER PRT DF0 DF1

Toto je výpis všech aktuálně dostupných přiřazení.

1> ASSIGN FONTS: EXISTS
FONTS MyFonts:FontDir

Jak vidíte, logický svazek FONTS: existuje a odkazuje na adresář FontDir na zařízení MyFonts.

1.System2.0:> ASSIGN Temp: work: DEFER
1.System2.0:> ASSIGN Temp: EXISTS
temp   <work:>

Opožděné přiřazení (typ DEFER) se zobrazuje ve špičatých závorkách.

1.System2.0:> ASSIGN Temp2: work: PATH
1.System2.0:> ASSIGN Temp2: EXISTS
Temp2                   [work:]

Přiřazení typu PATH (nevázaná pevně na médium) se zobrazí v hranatých závorkách.

10.System2.0:> ASSIGN Temp2: REMOVE

Takto se logického svazku "Temp2:" opět zbavíte.

  • sobota, 15 srpen 2020
  • Posted in: A

Napsat komentář

Pro přidání komentáře se prosím přihlaste.

Odhadované roční prodeje

odhadovany prodej

Prodeje podle regionů

prodej regiony

Počet prodaných kusů

Počet prodaných kusů