# Aros/User/DOS

* Navbar for the Aros wikibook
* Aros User
* Aros User Docs
* Aros User FAQs
* Aros User Applications
* Aros User DOS Shell
* Aros/User/AmigaLegacy
* Aros Dev Docs
* Aros Developer Docs
* Porting Software from AmigaOS/SDL
* For Zune Beginners
* Zune .MUI Classes
* For SDL Beginners
* Aros Developer BuildSystem
* Specific platforms
* Aros x86 Complete System HCL
* Aros x86 Audio/Video Support
* Aros x86 Network Support
* Aros Intel AMD x86 Installing
* Aros Storage Support IDE SATA etc
* Aros Poseidon USB Support
* x86-64 Support
* Motorola 68k Amiga Support
* Linux and FreeBSD Support
* Windows Mingw and MacOSX Support
* Android Support
* Arm Raspberry Pi Support
* PPC Power Architecture
* misc
* Aros Public License

## The AROS shell

In Dopus 5 Magellan - right mouse click -> Icaros -> Shell
In Wanderer (AROS Desktop / GUI), hit RightAROS + w (or F12 + w) (or use right mousebutton to access Wanderer's menu on the top of the screen) to open a shell window. To close the shell window, click on the top left X of the shell window or type in
or

## Beginners Tutorial / Basic Usage

By default, the current directory is being displayed as part of the shell prompt. By default, the starting point is 'System:', the OS's root directory also known as sys:
System:>
Type 'dir' and hit return. You will see the contents of the current directory.
System:>dir
You can run an executable or enter a directory just by typing its name (and hitting return). Enter the 'C' directory simply by typing 'c' (AROS DOS is case insensitive):
System:>c
Now press the up-arrow button twice. AROS shell has got a command history, which allows you to repeat or re-use commands quickly. Now you should see the 'dir' command again, so hit return. You will see the contents of the 'c' directory you've just entered.
System:c>dir
This directory is AROS's primary location for executables which can be run from any directory. Now type '/' (just a slash) and hit return. You've just moved up one directory, back to 'System:'
System:>
Now try another 'dir' like command (which resides in the 'c' directory), 'list':
System:>list
The output is quite the same as 'dir'. But you can control the 'list' output with options. AROS DOS command line options are recognized by their name, and eventually their position on the command line. Try this:
System:>list sub d
The output will now consist of all the directories contents which names contain the substring 'd'. Another example, another option:
System:>list sub d all
This will list the contents matching 'd' recursively.

## AROS dos script scripting

http://uk.aminet.net/docs/help/adosbegin.lha
http://se.aminet.net/pub/aminet/docs/help/adosbegin.lha
<condition> can be one of
WARN - return code of the previous command is 5 or higher.
ERROR - return code of the previous command is 10 or higher.
FAIL - return code of the previous command is 20 or higher.
EXISTS <filename> - check if file or directory exists.
<a> EQ <b> - string comparison.
<a> EQ <b> VAL - numeric comparison.
<a> GT <b> - same as EQ, just means "greater than".
<a> GE <b> - same as EQ, just means "greater or equal".
any of the above can be negated by NOT. e.g. use NOT GT for "less or equal" or NOT GE for "less than".

## Escape Codes

Example of coloured text in the shell
Is a so called SGR command that omits the first few parameters. It turns BOLD ON.
SGR command that tells: - boldface (1) - foregroundcolor 7 (37). Which means it is using pencolor #7 (which is black by default on aros, hence the setpencolor command). - use background color 1 (41). Which means it is using pencolor #1 (which is black by default on aros). - %n means printing the current opened cli/shell-number - %s means printing the current path - > print a nice pipe token after all the above (and also a space-character).
SGR command that tells: - plain text (0) - foregroundcolor 2 (32). Which means it is using pencolor #2 (which is white by default on aros). - backgroundcolor 1 (41). Which means it is using pencolor #1 (which is black by default on aros).
command 'Cursor position' - set row to 0 (0) - set column to 0 (0) Please note that this does not seem to work on AROS as on classic (not checked). it seems that the lowest nr for AROS to use is 1 (for both left and top).
command 'erase in display' (no additional parameters used in this command).

## Drives, Files, Assigns, Directories

A certain set of directories and files needed by the operating system will be present in every AROS distribution. Additionally, "assigns" (logical, not physical, drives) point to physical drive's partitions or locations in the partition's directory structure.

### Physical drives

    By default harddrives on the IDE bus are assigned the drive names "DH0:", "DH1:", etc.
    By default USB pendrives are assigned the drive names "DU0:", "DU1:", etc.
    By default CD / DVD drives on the IDE bus are assigned the drive names "CD0:", "CD1:", etc.

### Logical drives, "assigns"

SYS: Extras: DEVS: Development: L: S: LIBS: C: ENV: RAM: ENVARC: MUI: T:

### Directories and files
#### SYS:Prefs

...contains all system preferences programs, like "Screenmode", "Locale", "Time", "Trident" (USB), etc. Is part of default path, thus entering "screenmode" in shell will bring up "Screenmode" prefs program.

#### SYS:Devs

...contains device drivers and datatypes. Move a file to the corresponding subdirectory of "SYS:Storage" to disable it (after reboot). More (currently disabled) device drivers or datatypes may be found unter "SYS:Storage", move to "Devs:" to enable (after reboot).

#### SYS:Storage

...is a directory meant to store optional or currently unused devices and datatypes. Move contents of "Devs:" (see above) here to disable device drivers (after reboot).

#### S:startup-sequence

...is a script that will be run when starting up the operating system. It is also used by some applications to store their individual requirements (if any - mosty this will be a line like "assign PROGRAMNAME: SYS:path/to/installation/of/PROGRAMNAME")

#### S:user-startup

...is a script that will be run by S:startup-sequence. It's the place to put your own stuff. Imagine you have some executable programs installed in a different directory than "C:" (or any other in default "path") but still want to access them without typing their full paths, you may add a line like this: "path WORK:path/to/my/program/ add".
It is also used by some applications to store their individial requirements (see above).

#### S:shell-startup

...is a script that will be run when starting up a new shell. By default, it contains commands that define the look of your shell prompt. See description of 'prompt' command.

## AROS DOS Commands Reference

| Key | desc |
| /A | Required argument |
| /F | Final argument in list |
| /K | Keyword must be entered with argument |
| /M | Multiple arguments |
| /N | Number |
| /S | Switch (optional) |
Addbuffers :
| Format: | Addbuffers Drive/A Buffers/N |
| Purpose: | Add memory to disk buffers to improve speed. |
| Parameters: | DriveName of drive BuffersNumber of 512k buffers to add. |
| Example: | Addbuffers DH0: 10 |
AddDatatypes :
| Format: | AddDataTypes files/M QUIET/S REFRESH/S LIST/S |
| Purpose: | Activates datatypes or adds another datatype if not detected at startup |
| Parameters: | filesList of datatypes to add, QuietNo output, RefreshUpdate datatypes. |
| Example: | AddDataTypes gif.datatype REFRESH |
Alias :
| Format: | Alias Name String/F |
| Purpose: | Assigns a short name to a dos command. |
| Parameters: | NameAlias name, StringString or command to use for alias. |
| Example: | Alias Del Delete |
Ask :
| Format: | Ask Prompt/A |
| Purpose: | Asks a question in a script (reply y/n). Use IF WARN to test for a yes (value 5). |
| Parameters: | PromptText to be displayed. |
| Example: | Ask "Are you sure? Y/n" |
Assign :
| Format: | Assign Name Target/M LIST/S EXISTS/S DISMOUNT/S DEFER/S PATH/S ADD/S REMOVE/S |
| | VOLS/S DIRS/S DEVICES/S |
| Purpose: | Assign names to directory paths. |
| Parameters: | NameName of the assign, TargetDirectory path, ListDisplay list of assigns ExistsTest if assign exists (use IF WARN), DismountRemove assign DeferAssign later PathAdd assign with path, AddAdd a new target to existing path (like LIBS:) RemoveRemove an assign, VolsList volumes, DirsList directories, DevicesList devices. |
| Example: | Assign Development: Extras:bin |
Avail :
| Format: | Avail CHIP/S FAST/S TOTAL/S FLUSH/S |
| Purpose: | Memory availability |
| Parameters: | ChipDisplay chip memory FastDisplay fast memory TotalDisplay all memory FlushFree up memory |
| Example: | Avail TOTAL |
Break :
| Format: | Break Process/A/N ALL/S C/S D/S E/S F/S |
| Purpose: | Stop a program (see Status) |
| Paramters: | ProcessProcess name or Port AllApply C,D,E and F CApply Ctrl+C DApply Ctrl+d EApply Ctrl+E FApply Ctrl+F |
| Example: | Break 2 C |
CD :
| Format: | CD Dir/A |
| Purpose: | Change directory |
| Parameters: | DirDirectory to change to |
| Example: | CD Text_Files |
ChangeTaskPri :
| Format: | ChangeTaskPri Pri=Priority/A/N Process/K/N |
| Purpose: | Changes program's execution priority (see Status) |
| Parameters: | PriPriority to apply (-128 to +127) ProcessProcess number (see Status) |
| Example: | ChangeTaskPri 2 1 |
Conclip :
| Format: | Conclip Unit/N OFF/S |
| Purpose: | Activates clipboard device |
| Parameters: | UnitClipboard unit OffTurn off clipboard |
| Example: | Conclip 1 |
Copy :
| Format: | Copy From/M To/A ALL/S QUIET/S BUF=BUFFER/K/N CLONE/S DATES/S NOPRO/S COM/S NOREQ/S |
| Purpose: | Copy files (with/without protection bits) |
| Parameters: | FromFiles to copy, ToDirectory or file to copy to AllCopy all files, QuietNo output, BufferSize of buffer (default = 100K) CloneCopy file and datestamp, protect bits and comment DatesCopy datestamp as well NoProSet default protection bits ComCopy comment NoReqNo requester popups |
| Example: | Copy mydoc.txt docs: Dates |
Date :
| Format: | Date Day Date Time To=Ver/K |
| Purpose: | Display/change date or time |
| Parameters: | DayDay of the Week, DateDate in dd-mmm-yy format TimeTime in hh:mm[:ss] format ToSave to filename |
| Example: | Date To=date.txt |
Delete :
| Format: | Delete File/M/A ALL/S QUIET/S FORCE/S |
| Purpose: | Delete files and/or directories. |
| Parameters: | FilesOne or more files AllDelete all subfolders and files QuietNo output ForceIgnore protection flags when deleting |
| Example: | Delete OldFilesDir All |
Dir :
| Format: | Dir Dir Opt/K ALL/S DIRS/S FILES/S INTER/S |
| Purpose: | List contents of a directory |
| Parameters: | DirDirectory OptOption DirsList directories FilesList Files InterInteractive mode. |
| Example: | Dir S: Files |
Diskchange :
| Format: | Diskchange Device/A |
| Purpose: | Tell Dos that a disk has been swapped in a non-autosensing disk drive. |
| Parameters: | DeviceName of removable device. |
| Example: | Diskchange DU2: |
| Echo | Echo |
| Format: | Echo String/M NOLINE/S FIRST/K/N LEN/K/N TO/K |
| Purpose: | Display text in a script or part of a string of text. |
| Parameters: | StringText to display NoLineDo not print a new line FirstPosition of first character LenLength of substring ToDestination file |
| Example: | Echo "Enter your name: " NoLine |
Else :
| Format: | Else |
| Purpose: | Used with IF, if not true do these commands |
| Example: | If Exists s:User-Startup Else Endif |
EndCLI :
| Format: | EndCLI |
| Purpose: | Close CLI console window |
| Example: | EndCLI |
Endif :
| Format: | Endif |
| Purpose: | End a IF..ELSE..ENDIF block |
| Example: | If $Age GT 65 Else Endif |
Endskip :
| Format: | Endskip |
| Purpose: | Stops a SKIP branch (for debugging) |
| Example: | Endskip |
Eval :
| Format: | Eval Value1/A Op Value2/M To/K LFormat/K |
| Purpose: | Evaluate a simple arithmetic expression |
| Parameters: | Value1, Value2Values to evaluate (Decimal, Hex (0xn) or Octal (0nnn), OpOperlexiaation (+,-,*,/,^,%), ToFile to save result, LFormatOutput format string (use *n to give a line feed). |
| Example: | Eval $count + 1 to env:count |
Execute :
| Format: | Execute File/A |
| Purpose: | Execute a script or batch file |
| Parameters: | FileScript file to execute |
| Example: | Execute PCD |
Failat :
| Format: | Failat RCLIM/A |
| Purpose: | Change failure limit for scripts (0,5,10,20) |
| | (0 - Ok, 5 - Warn, 10 - Error, 20 - Fail) |
| Parameters: | RCLIMFailat number (0-20) |
| Example: | Failat 20 |
Fault :
| Format: | Fault Error/N/M |
| Purpose: | Display error message from a code |
| Parameters: | ErrorOne or more error numbers |
| Example: | Fault 221 |
| | "Fault 221: Disk is full" |
FileNote :
| Format: | Filenote File/A Comment ALL/S QUIET/S |
| Purpose: | Attach a comment to a file (see LIST) |
| Parameters: | FileFile to add comment to CommentText to apply AllApply to all files, QuietNo output |
| Example: | FileNote List.txt "A list of people's names" |
Format :
| Format: | Format Device Drive/K/A Name/K/A OFS/FFS/SFS |
| | DIRCACHE/S NODIRCACHE/S NOICONS/S QUICK/S |
| Purpose: | Initialises AROS disks (in System drawer) |
| Parameters: | Device|DriveDisk device or name to format NameNew volume name OFSOld Filing System FFSFast File System Intl|InternationalFFS International mode NoIntl|NoInternationalInternational mode off SFSSmart Filesystem DirCache|NoDirCacheDirectory caching on or off, NoIconsNo disk or trash icons QuickLess thorough format |
| Example: | format drive dh0: name AROS Format Drive DH2: Name Docs SFS NOICONS QUICK |
Get :
| Format: | Get Name/A |
| Purpose: | Returns contents of local env variable |
| Parameters: | NameEnviornment variable name |
| Example: | Get RC |
Getenv :
| Format: | Getenv Name/A |
| Purpose: | Return contents of a global environment variable |
| Parameters: | NameEnviornment variable name |
| Example: | Getenv Wanderer |
Iconx :
| Format: | Iconx |
| Purpose: | Enables a script to be run from Workbench. The script must have a Project .info file and |
| | the Default Tool set to c:IconX to run it. |
| Example: | Iconx |
If :
| Format: | If NOT/S WARN/S ERROR/S FAIL/S EQ/K GT/K GE/K VAL/S EXISTS/K |
| Purpose: | If condition is true execute following commands until an ELSE or ENDIF occurs. |
| Parameters: | NotReverse boolean result, WarnTest warn flag from previous command, ErrorTest error flag from previous command, FailTest fail flag from previous command, EQEquality test, GTGreater than test, GEGreater or equal test, VALInput is a number, ExistsTest file exists. |
| Example: | IF WARN, IF $count GT 10, IF EXISTS C:List |
Info :
| Format: | Info Device |
| Purpose: | Displays information about disks |
| Parameters: | DeviceName of device to display |
| Example: | Info DH0: |
Install :
| Format: | Install Device/A NOBOOT/S CHECK/S FFS/S |
| Purpose: | Saves a bootblock to a disk. If you have only one drive type INSTALL ? and |
| | swap disks and then type DF0: and press RETURN to save bootblock. |
| Parameters: | DeviceDisk to install bootblock, NoBootErase bootblock, CheckTest for bootblock, |
| | FFS = Use Fast File System. |
| Example: | Install DH0: |
IPrefs :
| Format: | IPrefs |
| Purpose: | Initialises preferences files on startup. |
| Example: | IPrefs |
Join :
| Format: | Join File/M/A AS=TO/K/A |
| Purpose: | Join two or files together. |
| Parameters: | FileFile(s) to join together, To|asDestination file |
| Example: | Join File1 File2 File3 as FileFull |
Lab :
| Format: | Lab Label |
| Purpose: | State a Label to Skip to in a script |
| Parameters: | LabelName of label |
| Example: | Lab PROC2 |
List :
| Format: | List Dir/M P=PAT/K KEYS/S DATES/S NODATES/S To/K Sub/K Since/K Upto/K |
| | QUICK/S BLOCK/S NOHEAD/S FILES/S DIRS/S LFORMAT/K ALL/S |
| Purpose: | List file details in a directory. |
| Parameters: | DirOne or more directory name(s) KeysDisplay keys NoDatesDo not display dates ToDestination file SubSubdirectories included SinceList files since date given UptoList files upto given date QuickSimple directory list BlockList files in block sizes NoHeadDo not display header lines FilesFiles only DirsDirectorys only LFormatOutput list using this format string AllAll files |
| Example: | List Development: Block Dates Since=01-Jul-00 |
Lock :
| Format: | Lock Drive/A ON/S OFF/S Passkey |
| Purpose: | Lock a device from writing. |
| Parameters: | DriveDrive to lock On|OffTurn lock on or off PassKeySpecify password. |
| Example: | Lock DH1: On GHK459 |
MakeDir :
| Format: | Makedir Name/M |
| Purpose: | Create one or more new directories. |
| Parameters: | NameOne or more directories to create. |
| Example: | MakeDir DH1:Docs DH1:Basic DH0:TempFiles |
MakeLink :
| Format: | MakeLink From/A To/A HARD/S FORCE/S |
| Purpose: | Creates a logical link between files |
| Parameters: | FromLink file ToActual file HardHard link ForceLink to sub-directory |
| Example: | MakeLink T C:Type Hard |
Mount :
| Format: | Mount Device/M From/K |
| Purpose: | Loads and mount a device |
| Parameters: | DeviceDevice to mount FromMount file |
| Example: | Mount DEVS:CD0 |
NewShell :
| Format: | NewShell Window From |
| Purpose: | Open a new Shell console (CON) window |
| Parameters: | WindowWindow config string FromAlternative script to Shell-Script. |
| Example: | NewShell From S:Shell-Startup |
Path :
| Format: | Path Path/M ADD/S SHOW/S RESET/S REMOVE/S QUIET/S |
| Purpose: | Set or change the program search path |
| Parameters: | PathDirectory path to change AddAdd path ShowDisplay path, ResetClear path RemoveRemove entry from path QuietNo output |
| Example: | Path SC:C Add |
Prompt :
| Format: | Prompt Prompt |
| Purpose: | Change the prompt text (Codes: %R = last return code, |
| | %S = Current path, %N = CLI Number) |
| Parameters: | PromptPath format |
| Example: | Prompt "%N.%S> " |
Protect :
| Format: | Protect File/A Flags ADD/S SUB/S ALL/S QUIET/S |
| Purpose: | Change the 'rwedsp' flags of a file. (r=read,w=write, e=execute,d=delete,s=script,p=pure) |
| Parameters: | FileFile to change FlagsOne or more flags AddAdd flag(s) to existing flags SubRemove flags from file AllChange all files QuietNo output |
| Example: | Protect Editor rwed |
Quit :
| Format: | Quit RC/N |
| Purpose: | Quit a script with optional return code |
| Parameters: | RCReturn Code |
| Example: | Quit 5 |
Relabel :
| Format: | Relabel Drive/A Name/A |
| Purpose: | Change name of a disk |
| Parameters: | DriveDisk to change NameNew volume name |
| Example: | Relabel DH2: Documents |
Rename :
| Format: | Rename From/A/M To=As/A QUIET/S |
| Purpose: | Rename or move one or more files |
| Parameters: | FromOld filename To|AsNew filename QuietNo output |
| Example: | Rename MyDoc as MyDoc.doc |
RequestChoice :
| Format: | RequestChoice Title/A Body/A Gadgets/M PubScreen/K |
| Purpose: | Asks for input via a requester |
| Parameters: | TitleTitle for dialog box BodyText for dialog box GadgetsList of buttons PubscreenScreen to use |
| Example: | RequestChoice >ENV:RT "Format" "About to format your hard disk*nAre you sure?" "Go ahead" "No way!" |
RequestFile :
| Format: | RequestFile Drawer File/K Pattern/K Title/K Positive/K Negative/K AcceptPattern/K RejectPattern/K |
| | SAVEMODE/S MULTISELECT/S DRAWERSONLY/S NOICONS/S PUBSCREEN/K |
| Parameters: | DrawerInitial drawer to use, FileInitial file name, PatternUse pattern as filter, TitleTitle of dialog box, PositiveText for OK button, NegativeText for Cancel button, AcceptPatternDefines file pattern(s) to show (overrides Pattern), RejectPatternPattern(s) of files to hide, SaveModeChange colours to indicate Save or other mode, MultiSelectAllow multiple file selection, DrawersOnlyDisplay only directories, NoIconsSuppress info files, PubScreenScreen to use. |
| Purpose: | Asks for a filename via ASL file requester |
| Example: | RequestFile >ENV:File Title "Select a File" Positive "Load" Noicons |
Resident :
| Format: | Resident Name File REMOVE/S ADD/S REPLACE/S PURE=FORCE/S SYSTEM/S |
| Purpose: | Stores AmigaDOS command in memory (quicker than reloading from disk each time it is executed). |
| | To ensure a command can be made resident check the pure flag (see List). |
| Parameters: | Name|FileFile to be made resident, RemoveRemove file from resident list, AddAdd file to resident memory, Pure|ForceForce a non-pure file to be resident, SystemShow system's resident code segments. |
| Example: | Resident C:Dir Pure |
Run :
| Format: | Run Command/F |
| Purpose: | Execute a program in the background (multi-task) |
| Parameters: | CommandProgram to run |
| Example: | Run DirectoryOpus > NIL: |
Search :
| Format: | Search From/M Search/A ALL/S NONUM/S QUIET/S QUICK/S FILE/S PATTERN/S |
| Purpose: | Search for a string in a file or a file on a disk |
| Parameters: | FromDirectory to search from, SearchText to search for, AllSearch sub-directories, NoNumLine numbers are not displayed, QuietNo Output, QuickReduce output listing, FileSearch a file rather than content, PatternSearch using a pattern. |
| Example: | Search SYS: "List" File All |
Set :
| Format: | Set Name String/F |
| Purpose: | Sets or lists a local environment variable (local to current shell or current process) |
| Parameters: | NameVariable name, StringText or number for variable |
| Example: | Set MyName "Peter" |
SetClock :
| Format: | Setclock LOAD/S SAVE/S RESET/S |
| Purpose: | Load or set the date and time from battery-backed clock |
| Parameters: | LoadLoad date from clock SaveSave date and time to clock ResetResets the click |
| Example: | Date 27-Nov-00 10:00, SetClock Save |
SetDate :
| Format: | Setdate File/A Weekday Date Time ALL/S |
| Purpose: | Set date of a file or directory (see List) |
| Parameters: | FileFile to change, WeekdayDay of week, DateDate, TimeTime, AllAll files |
| Example: | Setdate DEVS: Monday 10:30 |
Setenv :
| Format: | Setenv Name String/F |
| Purpose: | Change the contents of a environment variable |
| Parameters: | NameVariable name StringText or number for variable |
| Example: | Setenv Wanderer "44" |
SetKeyboard :
| Format: | Setkeyboard Keymap/A |
| Purpose: | Sets keyboard layout using layouts in Devs:Keymaps. You can use the Input preferences instead. |
| Parameters: | KeymapKeymap file to use |
| Example: | SetKeyboard USA0 |
Skip :
| Format: | Skip Label BACK/S |
| Purpose: | Jump to a label in a script (see Lab). Use back if label occurs before Skip command. |
| Parameters: | LabelLabel name to skip to, BackGo back in script to label |
| Example: | Skip Lab2 Back |
Sort :
| Format: | Sort From/A To/A Colstart/K CASE/S NUMERIC/S |
| Purpose: | Sort a file and output to new file |
| Parameters: | FromFile to sort, To = Output file, Colstart = Column to sort from, |
| | CaseUpper case entries are done first, NumericInput treated as numbers. |
| Example: | Sort Figures To SortedFigures Numeric |
Stack :
| Format: | Stack Size/N |
| Purpose: | Change/display amount of stack space in bytes. |
| Parameters: | SizeStack size in bytes |
| Example: | Stack 1000000 |
Status :
| Format: | Status Process/N FULL/S TCB/S CLI=ALL/S COM=COMMAND/K |
| Purpose: | Display status of running programs. TCB is Task Control Block |
| Parameters: | ProcessTask number FullFull output of process info TCBInformation except the command name CLI|AllCommand info only COM|CommandSearch for command |
| Example: | Status 2 Full |
Type :
| Format: | N/K HEX/S NUMBER/S |
| Purpose: | Display contents of text file on screen and binary files using HEX with optional line numbers. |
| Parameters: | FromText file to display ToOutput file or device Opt H | HexDisplay as hex values Opt N | NumberNumber the lines. |
| Example: | Type C:DIR HEX |
Unset :
| Format: | Unset Name |
| Purpose: | Remove a local env variable |
| Parameters: | NameEnvironment variable name |
| Example: | Unset MyName |
Unsetenv :
| Format: | Unsetenv Name |
| Purpose: | Remove a global env variable |
| Parameters: | NameEnvironment variable name |
| Example: | Unsetenv Wanderer |
Unalias :
| Format: | Unalias Name |
| Purpose: | Remove a short name for a command |
| Parameters: | NameAlias name |
| Example: | UnAlias MyDir |
Version :
| Format: | Version Name Version/N Revision/N FILE/S FULL/S Unit/N INTERNAL/S RES/S |
| Purpose: | Display workbench, library or device version information. |
| Parameters: | NameFile VersionPrint Kickstart or Workbench number and sets env variables and sets Warn flag RevisionAs Version but for Revision numer, File = Check file rather than memory |
| | FullDisplay full information, InternalCheck internal files, ResCheck resident files. |
| Example: | Version kickstart Version=39 Revision=106 |
Wait :
| Format: | Wait Time/N SEC=SECS/S MIN=MINS/S UNTIL/K |
| Purpose: | Wait for a specified period of time |
| Parameters: | TimeTime period in either Sec (Seconds) or Mins (Minutes) UntilWait until a time |
| Example: | Wait Until 12:00 |
Which :
| Format: | Which File/A NORES/S RES/S ALL/S |
| Purpose: | Find where a file is in command path (see Path) and sets Warn flag. |
| Parameters: | FileFile to locate NoResResident list is not searched ResOnly the resident list is searched AllSearch full path |
| Example: | Which Multiview |
Why :
| Format: | Why |
| Purpose: | Display reason why a previous command failed |
| Example: | Why |

### Additional DOS Information

Seems that Amiga shell allows an escape sequence to begin with just the 0x9B character, OR it allows the more traditional 0x1B character (033 in octal) followed the [ character. For sake of clarity, I will represent it by the C string \033[
AROS does not understand the \033[0m sequence, therefore you need to reset it using another colour sequence (on the assumption that the user has not changed the default Shell colours). This turns out to be \033[31;40m . It makes sense to play it safe, and follow it by the (ignored on AROS) \033[0m sequence.
Therefore my final highlight code looks like this:
Or if you code in E (like me) then it is this:

### DOS commands only present in AROS

AddAudioModes :
| Format: | |
| Purpose: | |
| Parameters: | Files/M Quiet/S Refresh/S Remove/S DblScan/S |
| Example: | |
Beep :
* Format:
* Purpose:
* Parameters:
* Example:
CheckMem :
* Format:
* Purpose:
* Parameters:
* Example:
Delay :
| Format: | |
| Purpose: | |
| Parameters: | Time/N Tick=Ticks/S |
| Example: | |
DevList :
| Format: | DevList |
| Purpose: | gives a list of devices running - address, version, revision, opencnt, flags, name |
| Parameters: | |
| Example: | devlist |
LibList :
| Format: | LibList |
| Purpose: | gives address, version, revision, opencnt, flags, name of open libraries and mui |
| Parameters: | |
| Example: | liblist |
Reboot :
| Format: | Reboot |
| Purpose: | warm reboots machine - not functioning |
| Parameters: | |
| Example: | |
ResList :
| Format: | reslist |
| Purpose: | gives a list of resources - name and address |
| Parameters: | |
| Example: | reslist |
Shutdown :
| Format: | shutdown |
| Purpose: | power off computer |
| Parameters: | |
| Example: | not functioning |
TaskList :
| Format: | tasklist |
| Purpose: | gives a list of tasks running - address, type, priority, state, cpu, time, stack, used, name |
| Parameters: | |
| Example: | tasklist |

## Examples

Is there a way to unzip more say 10 zipped archived at a time