Please enable JavaScript to view this site.

A-Shell Reference

Rewritten April 2024

HOST {{switches} cmd {modifier}}

HOST is a special command used to either exit A-Shell entirely (if no arguments specified), or to temporarily reach outside it execute a command or program in the outside world—i.e. the parent shell or native operating system environment.

Parameters

switches

Switch

Function

/S

On return from the specified cmd, display its exit status code

/O

(Unix only) Captures the stdout of the cmd and displays it from within A-Shell. Maximum size of the output text is 512K; if exceeded, a warning message will be displayed at the end of the output. If /O not used, output from the cmd will not be recognized by A-Shell, causing the display to become mixed up. Use XY=0 to reset it.

/?

Display help

cmd

A command or command line recognizable in the environment that A-Shell was launched from.

HOST /s /o du /vm"

If the command itself starts with "/s" or "/o" then you must quote the first token of the command in order to avoid confusion with the switches, e.g.

HOST /o "/o/mycmd" arg2 arg 2

modifer

An optional single character appended to the end of the command line (separated by a space) which affects the way the command is executed. See Command Modifiers.

Comments

When HOST is used to exit A-Shell entirely (i.e. with no arguments), if the subroutine OPR:HOST.SBX exists, it will be XCALLed prior to the session terminating. (This provides a way for applications to perform cleanup, log statistics, etc.)

Example 1:  interactive host command

The following UNIX example will launch the vi editor to edit the miame.ini file :

.host vi "/vm/miame/miame.ini"

This will take over your terminal until the vi session is exited. At that point control returns back to A-Shell, but you'll need to clear the screen to get rid of the characters left behind by vi (which the A-Shell screen tracking system won't know anything about).

Example 2:  redirecting host command to a file

This UNIX example generates a process list, filters it to just those lines executing ashell, sends the output to the file ps.lst and the uses the A-Shell EZTYP command to display it.

.HOST ps -ef | grep ashell > ps.lst

.eztyp ps.lst

 

Example 2:  launching a command in background

By adding the '&' command modifier (in the UNIX environment), the specified command will run as a child in background, returning control immediately to the A-Shell session, e.g.

.host "rsync -a /opt/filename.zip /tmp/" >x.lst 2>&1 &

Example 3:  launching the Windows Command Prompt

.host "cmd $"

In the above example, the '$' command modifier causes control to return to A-Shell immediately, even though the Windows Command Prompt remains open. This is particularly useful for launching a special Windows program that works in parallel with A-Shell (such as messaging app, stock ticker, etc.)

See Also

HOSTEX: Subroutine interface to HOST mechanism
SHLEXC.LIT: Launch Windows app registered for file type