annotate docs/nitros9guide/shell.refentry @ 1399:40ccec5c5717

Updated
author boisy
date Fri, 10 Oct 2003 12:26:41 +0000
parents bc28c3bc3769
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
1 <refentry id="shell">
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
2 <refnamediv>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
3 <refname>SHELL</refname>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
4 <refpurpose>OS-9 Command Interpreter</refpurpose>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
5 </refnamediv>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
6
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
7 <refsynopsisdiv>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
8 <cmdsynopsis>
1093
4dae346c4969 Added crossreferences and lowercased synopsises
roug
parents: 1053
diff changeset
9 <command>shell</command>
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
10 <arg choice="plain"><replaceable>arglist</replaceable></arg>
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
11 </cmdsynopsis>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
12 </refsynopsisdiv>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
13
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
14 <refsect1><title>Description</title>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
15 <para>
1053
b5ff125a1d60 Since this book was only typeset in fixed width, single-font, they used
roug
parents: 975
diff changeset
16 The <command>shell</command> is OS-9's command interpreter program. It reads data from
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
17 its standard input path (the keyboard or a file), and interprets the
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
18 data as a sequence of commands. - The basic function of the shell is
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
19 to initiate and control execution of other OS-9 programs.
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
20 </para>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
21 <para>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
22 The shell reads and interprets one text line at a time from the
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
23 standard input path. After interpretation of each line it reads
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
24 another until an end-of-file condition occurs, at which time it
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
25 terminates itself. A special case is when the shell is called from
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
26 another program, in which case it will take the parameter area (rest
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
27 of the command line) as its first line of input. If this command
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
28 line consists of &quot;built in&quot; commands only, more lines will be read
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
29 and processed; otherwise control will return to the calling program
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
30 after the single command line is processed.
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
31 </para>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
32 <para>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
33 The rest of this description is a technical specification of the
1053
b5ff125a1d60 Since this book was only typeset in fixed width, single-font, they used
roug
parents: 975
diff changeset
34 shell syntax. Use of the <command>shell</command> is described fully in Chapters 2
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
35 and 4 of this manual.
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
36 </para>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
37 </refsect1>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
38 <refsect1><title>Shell Input Line Formal Syntax</title>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
39 <synopsis>
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
40 <replaceable>pgm line</replaceable> := <replaceable>pgm</replaceable> {<replaceable>pgm</replaceable>}
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
41 <replaceable>pgm</replaceable> := [<replaceable>params</replaceable>] [ <replaceable>name</replaceable> [<replaceable>modif</replaceable>] [<replaceable>pgm params</replaceable>] [<replaceable>modif</replaceable>] ] [<replaceable>sep</replaceable>]
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
42
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
43 Program Specifications
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
44
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
45 <replaceable>name</replaceable> := <replaceable>module name</replaceable>
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
46 := <replaceable>pathlist</replaceable>
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
47 := ( <replaceable>pgm list</replaceable> )
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
48
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
49 Parameters
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
50
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
51 <replaceable>params</replaceable>:= <replaceable>param</replaceable> { <replaceable>delim</replaceable> <replaceable>param</replaceable> }
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
52 <replaceable>delim</replaceable> := space or comma characters
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
53 <replaceable>param</replaceable> := ex <replaceable>name</replaceable> [<replaceable>modif</replaceable>] chain to program specified
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
54 := chd <replaceable>pathlist</replaceable> change working directory
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
55 := kill <replaceable>procID</replaceable> send abort signal to process
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
56 := setpr<replaceable>procID</replaceable> <replaceable>pty</replaceable> change process priority
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
57 := chx <replaceable>pathlist</replaceable> change execution directory
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
58 := w wait for any process to die
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
59 := p turn &quot;OS9:&quot; prompting on
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
60 := -p turn prompting off
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
61 := t echo input lines to std output
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
62 := -t don't echo input lines
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
63 := -x dont abort on error
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
64 := x abort on error
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
65 := * <replaceable>text</replaceable> comment line: not processed
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
66 <replaceable>sep</replaceable> := ; sequential execution separator
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
67 := &amp; concurrent execution separator
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
68 := ! pipeline separator
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
69 := <replaceable>cr</replaceable> end-of-line (sequential execution separator)
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
70
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
71
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
72 Modifiers
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
73
975
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
74 <replaceable>modif</replaceable> := <replaceable>mod</replaceable> { <replaceable>delim</replaceable> <replaceable>mod</replaceable> }
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
75 <replaceable>mod</replaceable> := &lt; <replaceable>pathlist</replaceable> redirect standard input
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
76 := &gt; <replaceable>pathlist</replaceable> redirect standard output
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
77 := &gt;&gt; <replaceable>pathlist</replaceable> redirect standard error output
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
78 := # <replaceable>integer</replaceable> set process memory size in pages
c565a4700689 The entitity replstart was replaced with <replaceable>
roug
parents: 138
diff changeset
79 := # <replaceable>integer</replaceable> K set program memory size in 1K increments
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
80 </synopsis>
1148
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
81 <!--
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
82 .. A new way to describe the syntax ..
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
83 <productionset><title>Program Line</title>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
84 <production id="shell.line">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
85 <lhs>pgm line</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
86 <rhs><nonterminal def="shell.pgm">pgm</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
87 {<nonterminal def="shell.pgm">pgm</nonterminal>}
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
88 </rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
89 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
90 <production id="shell.pgm">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
91 <lhs>pgm</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
92 <rhs>[<nonterminal def="shell.params">params</nonterminal>]
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
93 [ <nonterminal def="shell.name">name</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
94 [<nonterminal def="shell.modif">modif</nonterminal>]
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
95 [<nonterminal def="shell.pgmparams">pgm params</nonterminal>]
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
96 [<nonterminal def="shell.modif">modif</nonterminal>] ]
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
97 [<nonterminal def="shell.sep">sep</nonterminal>]
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
98 </rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
99 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
100 </productionset>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
101 <productionset><title>Program Specifications</title>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
102 <production id="shell.name">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
103 <lhs>name</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
104 <rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
105 <nonterminal def="shell.name">module name</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
106 | <nonterminal def="shell.pathlist">pathlist</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
107 |( <nonterminal def="shell.pgmlist">pgm list</nonterminal> )
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
108 </rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
109 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
110 </productionset>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
111 <productionset><title>Parameters</title>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
112 <production id="shell.params">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
113 <lhs>params</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
114 <rhs><nonterminal def="shell.param">param</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
115 { <nonterminal def="shell.delim">delim</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
116 <nonterminal def="shell.param">param</nonterminal> }
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
117 </rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
118 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
119 <production id="shell.delim">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
120 <lhs>delim</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
121 <rhs>space or comma characters</rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
122 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
123 <production id="shell.param">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
124 <lhs>param</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
125 <rhs>ex <nonterminal def="shell.name">name</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
126 [<nonterminal def="shell.modif">modif</nonterminal>]
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
127 <lineannotation>chain to program specified</lineannotation>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
128 <sbr/>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
129 chd <nonterminal def="shell.name">pathlist</nonterminal>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
130 <lineannotation>change working directory</lineannotation>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
131 </rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
132 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
133
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
134
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
135
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
136
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
137 <production id="shell.param">
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
138 <lhs>param</lhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
139 <rhs>space or comma characters</rhs>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
140 </production>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
141 </productionset>
bc28c3bc3769 Put all stylesheets in one central location
roug
parents: 1093
diff changeset
142 -->
138
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
143 </refsect1>
d9631713b7cd Split up the commands into individual files.
roug
parents:
diff changeset
144 </refentry>