ref: 63392be12a1a657419af2d2966995428721f18f3
dir: /man/1/os/
.TH OS 1 hosted .SH NAME os \- interface to host OS commands (hosted Inferno only) .SH SYNOPSIS .B bind -a '#C' / .br .B os [ .B -DrcCbn ] [ .B -m .I mountpoint ] [ .BI -d " dir" ] [ .BI -N " level" ] .I cmd [ .IR arg ... ] .SH DESCRIPTION .I Os uses a .IR cmd (3) device to execute a command, .IR cmd , on a host system. By default, the current working directory of the calling process inside Inferno is used as the .I cmd working directory and .B $emuroot is prepended to .I cmd arguments beginning with the .I / character. If the .B -m option is given, .I os uses the device at .IR mountpoint , otherwise it is asssumed to be at .BR /cmd , and is bound into the local namespace if necessary. .PP The .B -d option causes the command to run in directory .IR dir ; an error results and the command will not run if .I dir does not exist or is inaccessible. If the .B -r option is specified, .B $emuroot will not be prepended to the working directory. If the .B -c option is specified, the current working directory will not be used for execution. If the .B -r and .B -d options are not set, then the Inferno root directory will be used as the working directory. Note that the .B -d option overrides the .B -r and .B -c options. The .B -C option disables the prepending of .B $emuroot to arguments to .I cmd beginning with the .I / character. The standard output and standard error of the command appear on the standard output and standard error streams of the .I os command itself. .I Os copies the standard input to the remote command's standard input; redirect .IR os 's input to .B /dev/null if there is no input to the command. .I Os terminates when .I cmd does, and its exit status reflects the status of .I cmd (if available). .PP If the .I os command is killed or exits (eg, for lack of input and output), the host's own process control operations are used to (attempt to) kill .IR cmd , if it is still running. The .B -b (background) option suppresses that behaviour. .PP The .B -n option causes .I cmd to run with less than normal priority (`nice'). The .B -N option sets low priority to a particular .I level from 1 to 3. .SH FILES .B /cmd/clone .SH SOURCE .B /appl/cmd/os.b .SH "SEE ALSO" .IR cpu (1), .IR rcmd (1), .IR cmd (3) .SH DIAGNOSTICS The exit status of .I os reflects any error that occurs when starting .I cmd and, if it starts successfully, the status of .I os is the exit status of .IR cmd .