Open System Services Porting Guide (G06.24+, H06.03+)

Table Of Contents
Interoperating Between User Environments
Open System Services Porting Guide520573-006
4-20
Starting an OSS Shell Script
Starting an OSS Shell Script
You can start an OSS shell script in either of the ways shown in the previous two
examples. The results produced by the script can differ depending on the login
initialization.
A script that depends on any login initialization such as aliases or functions can only
execute correctly with the -c option specified. The following command executes the
shell script /home/stu01/process_report:
osh -c "/home/stu01/process_report"
Redirecting Input and Output to a File
You can redirect input from a file to a command in the OSS environment using the left
angle bracket (<) operator. Output from a command, program, or script can be
redirected to a file in the OSS environment using the right angle bracket (>) operator.
The two commands shown next redirect their output: the first to an OSS file, and the
second to a Guardian file in the /G file system. The -nowait parameter is used to
return control to the user immediately after the commands are initiated:
osh -nowait -p /bin/ls /home/stu01 > /home/stu01/myfiles
osh -nowait -p /bin/ls /home/stu01 >
/G/DATA01/STU01/MYFILES
In the following example, input is redirected from the Guardian file system (myfiles)
with the left angle bracket. Output is redirected to the user’s Guardian subvolume to a
file called NEWFILE:
osh -p cat < /G/data01/stu01/myfiles > newfile
Redirecting Input and Output to the Guardian Environment
You can redirect the OSS standard files (stdin, stdout, stderr) to Guardian processes
and EDIT files by using the OSSTTY facility. OSSTTY can be used as a target for data
redirection, providing a capability similar to the UNIX pseudo-TTY feature ptty.
The following example starts OSSTTY, then starts an OSS shell and executes a single
command. Output sent to /G/tty/#stdout is received by OSSTTY and redirected
to the EDIT file editfil.
TACL> run osstty /name $tty, out editfil, nowait/
TACL> osh -c "ls /home/stu01/testfil" > /G/tty/#stdout
The -nowait parameter is used to return control to the user immediately after the run
command is entered.