[AmigaOS / ApolloOS Command Reference\Assign] 
 

ASSIGN

Format: ASSIGN [<name>: {dir}] [LIST] [EXISTS] [DISMOUNT] [DEFER] [PATH] [ADD] [REMOVE] [VOLS] [DIRS] [DEVICES] Template: NAME, TARGET/M, LIST/S, EXISTS/S, DISMOUNT/S, DEFER/S, PATH/S, ADD/S, REMOVE/S, VOLS/S, DIRS/S, DEVICES/S Purpose: To control assignment of logical device names to file system directories. Path: C:ASSlGN Specifcation: ASSIGN allows directories to be referenced via short, convenient logical device names rather than their usual names or complete paths. The ASSIGN command can create assignments, remove assignments, or list some or all current assignments. If the <name> and {dir} arguments are given, ASSIGN will assign the given name to the specified directory. Each time the assigned logical device name is refered to, AmigaDOS will access the specified directory. If the <name> given is already assigned to a directory, the new directory will replace the previous directory. (Always be sure to include a colon after the <name> argument.) If only the <name> argument is given, any existing ASSIGN of a directory to that logical device will be cancelled. You can assign several logical device names to the same directory by using multiple ASSIGN commands. You can assign one logical device name to several directories by specifying each directory after the <name> argument or by using the ADD option. When the ADD option is specified, any existing directory assigned to <name> is not cancelled. Instead, the newly specified directory is added to the ASSIGN list, and the system will search for both directories when <name> is encountered. If the original directory is not available, ASSIGN will be satisfied with the newly added directory. To delete a name from the ASSIGN list, use the REMOVE option. If no arguments are given with ASSIGN, or if the LIST keyword is used, a list of all current assignments will be displayed. If the VOLS, DIRS, or DEVICES switch is specified, ASSIGN will limit the display to volumes, directories, or devices, respectively. When the EXISTS keyword is given along with a logical device name, AmigaDOS will search the ASSIGN list for that name and display the volume and directory assigned to that device. If the device name is not found, the condition flag is set to 5 (WARN). This is commonly used in scripts. Normally, when the (dir) argument is given, AmigaDOS immediately looks for that directory. If the ASSIGN commands are part of the Startup-Sequence, the directories need to be present on a mounted disk during the boot procedure. If an assigned directory cannot be found, a requester appears asking for the volume containing that directory. However, two new options, DEFER and PATH, will wait until the directory is actually needed before searching for it. The DEFER option creates a "late-binding" ASSIGN. This ASSIGN only takes effect when the assigned object is first referenced, rather than when the assignment is made. This eliminates the need to insert disks during the boot procedure that contain the directories that are assigned during the Startup- Sequence. When the DEFER option is used, the disk containing the assigned directory is not needed until the object is actually called upon. The assignment remains in force until explicitly changed. For example, if you ASSIGN FONTS: to DF0:Fonts with the DEFER option, the system will associate FONTS: with whatever disk is in DF0: at the time FONTS: is called. If you have a Workbench disk in DF0: at the time the FONTS: directory is needed, the system will associate FONTS: with that particular Workbench disk. If you later remove that Workbench disk and insert another disk containing a FONTS: directory, the system will specifically request the original Workbench disk the next time FONTS: is needed. It is not necessary for the assigned name to retain the name of the directory nor is it necessary for it to be uppercase. For example, both CLIPS and Clips can be assigned to the Ram Disk:Clipboards directory. The PATH option creates a "non-binding" ASSIGN. A non-binding ASSIGN acts like a DEFERred ASSIGN except that it is re-evaluated each time the assigned name is referenced. This prevents the system from expecting a particular volume in order to use a particular directory (such as the situation described in the example above). For example, if you assign FONTS: to DF0:Fonts with the PATH option, any disk in DF0: will be searched when FONTS: is referenced. As long as the disk contains a FONTS: directory, it will satisfy the ASSIGN. You cannot assign multiple directories with the PATH option. The PATH option is especially useful to users with floppy disk systems as it eliminates the need to reinsert the original Workbench disk used to boot the system. As long as the drive you have assigned with the PATH option contains a disk with the assigned directory name, the system will use that disk. The DISMOUNT option disconnects a volume or device from the list of mounted devices. It does not free up resources; it merely removes the name from the list. There is no way to cancel a DISMOUNT without rebooting. DISMOUNT is primarily for use during software development. Careless use of this option may cause a software failure. Example 1: 1> ASSIGN FONTS: MyFonts:Fontdir Assigns the FONTS: directory to Fontdir on MyFonts:. Example 2: 1> ASSIGN LIST Volumes: Ram Disk [Mounted] Workbench [Mounted] MyFonts [Mounted] Directories: LOCALE Workbench:Locale KEYMAPS Workbench:Devs/Keymaps PRINTERS Workbench:Devs/Printers REXX Workbench:S CLIPS Ram Disk:Clipboards ENV Ram Disk:Env T Ram Disk:T ENVARC Workbench:Prefs/Env-Archive SYS Workbench: C Workbench:C S Workbench:S L Workbench:L FONTS MyFonts:Fontdir DEVS Workbench:Devs LIBS Workbench:Libs Devices: PIPE AUX RAM CON RAW PAR SER PRT DF0 DF1 Shows a list of all current assignments. Example 3: 1> ASSIGN FONTS: EXISTS FONTS: MyFonts:FontDir Is an inquiry into the assignment of FONTS:. AmigaDOS responds by showing that FONTS: is assigned to the FontDir directory of the MyFonts volume. Example 4: 1> ASSIGN LIBS: SYS:Libs BigAssem:Libs PDAssem:Libs Is a multiple-directory assignment that creates a search path containing three Libs directories. These directories will be searched in sequence each time LIBS: is invoked. Example 5: 1> ASSIGN DEVS: REMOVE Removes the DEVS: assignment from the system. Example 6: 1> ASSIGN WorkDisk: DF0: DEFER 1> ASSIGN WorkDisk: EXISTS WorkDisk: DF0: Sets up a late-binding assignment of the logical device WorkDisk:. The disk does not have to be inserted in DF0: until the first time you refer to the name WorkDisk:. Notice that ASSIGN shows DF0: enclosed in angle brackets to indicate that it is DEFERred. After the first reference to WorkDisk:, the volume name of the disk that was in DF0: at the time will replace <DF0:>. Example 7: 1> ASSIGN C: DF0:C PATH 1> ASSIGN C: EXISTS WorkDisk DF0: Will reference the C directory of whatever disk is in DF0: at the time a command is searched for. Notice that ASSIGN shows DF0:C in square brackets to indicate that it is a non-binding ASSIGN. Example 8: 1> ASSIGN LIBS: ZCad:Libs ADD Adds ZCad:Libs to the list of directories assigned as LIBS:. Example 9: 1> ASSIGN LIBS: ZCad:Libs REMOVE Removes ZCad:Libs from the list of directories assigned as LIBS:.