Annotation of 43BSDReno/share/doc/usd/03.shell/t4, revision 1.1.1.1

1.1       root        1: .\"    @(#)t4  6.1 (Berkeley) 5/22/86
                      2: .\"
                      3: .bp
                      4: .SH
                      5: Appendix\ A\ -\ Grammar
                      6: .LP
                      7: .DS
                      8: \fIitem:               word
                      9:                input-output
                     10:                name = value
                     11: .sp 0.8
                     12: simple-command: item
                     13:                simple-command item
                     14: .sp 0.8
                     15: command:       simple-command
                     16:                \fB( \fIcommand-list \fB)
                     17:                \fB{ \fIcommand-list \fB}
                     18:                \fBfor \fIname \fBdo \fIcommand-list \fBdone
                     19:                \fBfor \fIname \fBin \fIword \*(ZZ \fBdo \fIcommand-list \fBdone
                     20:                \fBwhile \fIcommand-list \fBdo \fIcommand-list \fBdone
                     21:                \fBuntil \fIcommand-list \fBdo \fIcommand-list \fBdone
                     22:                \fBcase \fIword \fBin \fIcase-part \*(ZZ \fBesac
                     23:                \fBif \fIcommand-list \fBthen \fIcommand-list \fIelse-part \fBfi
                     24: .sp 0.8
                     25: \fIpipeline:           command
                     26:                pipeline \fB\*(VT\fI command
                     27: .sp 0.8
                     28: andor:         pipeline
                     29:                andor \fB&&\fI pipeline
                     30:                andor \fB\*(VT\*(VT\fI pipeline
                     31: .sp 0.8
                     32: command-list:  andor
                     33:                command-list \fB;\fI
                     34:                command-list \fB&\fI
                     35:                command-list \fB;\fI andor
                     36:                command-list \fB&\fI andor
                     37: .sp 0.8
                     38: input-output:  \fB> \fIfile
                     39:                \fB< \fIfile
                     40:                \fB\*(AP \fIword
                     41:                \fB\*(HE \fIword
                     42: .sp 0.8
                     43: file:          word
                     44:                \fB&\fI digit
                     45:                \fB&\fI \(mi
                     46: .sp 0.8
                     47: case-part:     pattern\fB ) \fIcommand-list\fB ;;
                     48: .sp 0.8
                     49: \fIpattern:            word
                     50:                pattern \fB\*(VT\fI word
                     51: .sp 0.8
                     52: \fIelse-part:  \fBelif \fIcommand-list\fB then\fI command-list else-part\fP
                     53:                \fBelse \fIcommand-list\fI
                     54:                empty
                     55: .sp 0.8
                     56: empty:
                     57: .sp 0.8
                     58: word:          \fRa sequence of non-blank characters\fI
                     59: .sp 0.8
                     60: name:          \fRa sequence of letters, digits or underscores starting with a letter\fI
                     61: .sp 0.8
                     62: digit:         \fB0 1 2 3 4 5 6 7 8 9\fP
                     63: .DE
                     64: .LP
                     65: .bp
                     66: .SH
                     67: Appendix\ B\ -\ Meta-characters\ and\ Reserved\ Words
                     68: .LP
                     69: a) syntactic
                     70: .RS
                     71: .IP \fB\*(VT\fR 6
                     72: pipe symbol
                     73: .IP \fB&&\fR 6
                     74: `andf' symbol
                     75: .IP \fB\*(VT\*(VT\fR 6
                     76: `orf' symbol
                     77: .IP \fB;\fP 6
                     78: command separator
                     79: .IP \fB;;\fP 6
                     80: case delimiter
                     81: .IP \fB&\fP 6
                     82: background commands
                     83: .IP \fB(\ )\fP 6
                     84: command grouping
                     85: .IP \fB<\fP 6
                     86: input redirection
                     87: .IP \fB\*(HE\fP 6
                     88: input from a here document
                     89: .IP \fB>\fP 6
                     90: output creation
                     91: .IP \fB\*(AP\fP 6
                     92: output append
                     93: .sp 2
                     94: .RE
                     95: .LP
                     96: b) patterns
                     97: .RS
                     98: .IP \fB\*(ST\fP 6
                     99: match any character(s) including none
                    100: .IP \fB?\fP 6
                    101: match any single character
                    102: .IP \fB[...]\fP 6
                    103: match any of the enclosed characters
                    104: .sp 2
                    105: .RE
                    106: .LP
                    107: c) substitution
                    108: .RS
                    109: .IP \fB${...}\fP 6
                    110: substitute shell variable
                    111: .IP \fB\`...\`\fP 6
                    112: substitute command output
                    113: .sp 2
                    114: .RE
                    115: .LP
                    116: d) quoting
                    117: .RS
                    118: .IP \fB\e\fP 6
                    119: quote the next character
                    120: .IP \fB\'...\'\fP 6
                    121: quote the enclosed characters except for \'
                    122: .IP \fB"\&..."\fR 6
                    123: quote the enclosed characters except
                    124: for \fB$ \` \e "\fP
                    125: .sp 2
                    126: .RE
                    127: .LP
                    128: e) reserved words
                    129: .DS
                    130: .ft B
                    131: if then else elif fi
                    132: case in esac
                    133: for while until do done
                    134: {  }
                    135: .ft
                    136: .DE

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.