xref: /original-bsd/usr.bin/rsh/rsh.1 (revision 94c97675)
Copyright (c) 1983 The Regents of the University of California.
All rights reserved.

Redistribution and use in source and binary forms are permitted
provided that the above copyright notice and this paragraph are
duplicated in all such forms and that any documentation,
advertising materials, and other materials related to such
distribution and use acknowledge that the software was developed
by the University of California, Berkeley. The name of the
University may not be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.

@(#)rsh.1 6.2 (Berkeley) 09/20/88

RSH 1 ""
C 5
NAME
rsh - remote shell
SYNOPSIS
rsh host [ -l username ] [ -n ] command

host [ -l username ] [ -n ] command

DESCRIPTION
Rsh connects to the specified host, and executes the specified command. Rsh copies its standard input to the remote command, the standard output of the remote command to its standard output, and the standard error of the remote command to its standard error. Interrupt, quit and terminate signals are propagated to the remote command; rsh normally terminates when the remote command does.

The remote username used is the same as your local username, unless you specify a different remote name with the -l option. This remote name must be equivalent (in the sense of rlogin (1C)) to the originating account; no provision is made for specifying a password with a command.

If you omit command, then instead of executing a single command, you will be logged in on the remote host using rlogin (1C).

Shell metacharacters which are not quoted are interpreted on local machine, while quoted metacharacters are interpreted on the remote machine. Thus the command

rsh otherhost cat remotefile >> localfile

appends the remote file remotefile to the localfile localfile, while

rsh otherhost cat remotefile ">>" otherremotefile

appends remotefile to otherremotefile.

Host names are given in the file /etc/hosts. Each host has one standard name (the first name given in the file), which is rather long and unambiguous, and optionally one or more nicknames. The host names for local machines are also commands in the directory /usr/hosts; if you put this directory in your search path then the rsh can be omitted.

FILES
/etc/hosts

/usr/hosts/*

SEE ALSO
rlogin(1)
BUGS
If you are using csh (1) and put a rsh (1) in the background without redirecting its input away from the terminal, it will block even if no reads are posted by the remote command. If no input is desired you should redirect the input of rsh to /dev/null using the -n option.

You cannot run an interactive command (like rogue (6) or vi (1)); use rlogin (1).

Stop signals stop the local rsh process only; this is arguably wrong, but currently hard to fix for reasons too complicated to explain here.