1*93d36fc9SDavid van Moolenbroek.\" $NetBSD: rsh.1,v 1.20 2005/03/11 02:45:24 ginsbach Exp $ 2*93d36fc9SDavid van Moolenbroek.\" 3*93d36fc9SDavid van Moolenbroek.\" Copyright (c) 1983, 1990, 1993 4*93d36fc9SDavid van Moolenbroek.\" The Regents of the University of California. All rights reserved. 5*93d36fc9SDavid van Moolenbroek.\" 6*93d36fc9SDavid van Moolenbroek.\" Redistribution and use in source and binary forms, with or without 7*93d36fc9SDavid van Moolenbroek.\" modification, are permitted provided that the following conditions 8*93d36fc9SDavid van Moolenbroek.\" are met: 9*93d36fc9SDavid van Moolenbroek.\" 1. Redistributions of source code must retain the above copyright 10*93d36fc9SDavid van Moolenbroek.\" notice, this list of conditions and the following disclaimer. 11*93d36fc9SDavid van Moolenbroek.\" 2. Redistributions in binary form must reproduce the above copyright 12*93d36fc9SDavid van Moolenbroek.\" notice, this list of conditions and the following disclaimer in the 13*93d36fc9SDavid van Moolenbroek.\" documentation and/or other materials provided with the distribution. 14*93d36fc9SDavid van Moolenbroek.\" 3. Neither the name of the University nor the names of its contributors 15*93d36fc9SDavid van Moolenbroek.\" may be used to endorse or promote products derived from this software 16*93d36fc9SDavid van Moolenbroek.\" without specific prior written permission. 17*93d36fc9SDavid van Moolenbroek.\" 18*93d36fc9SDavid van Moolenbroek.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 19*93d36fc9SDavid van Moolenbroek.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 20*93d36fc9SDavid van Moolenbroek.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 21*93d36fc9SDavid van Moolenbroek.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 22*93d36fc9SDavid van Moolenbroek.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 23*93d36fc9SDavid van Moolenbroek.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 24*93d36fc9SDavid van Moolenbroek.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 25*93d36fc9SDavid van Moolenbroek.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 26*93d36fc9SDavid van Moolenbroek.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 27*93d36fc9SDavid van Moolenbroek.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 28*93d36fc9SDavid van Moolenbroek.\" SUCH DAMAGE. 29*93d36fc9SDavid van Moolenbroek.\" 30*93d36fc9SDavid van Moolenbroek.\" @(#)rsh.1 8.2 (Berkeley) 4/29/95 31*93d36fc9SDavid van Moolenbroek.\" 32*93d36fc9SDavid van Moolenbroek.Dd March 9, 2005 33*93d36fc9SDavid van Moolenbroek.Dt RSH 1 34*93d36fc9SDavid van Moolenbroek.Os 35*93d36fc9SDavid van Moolenbroek.Sh NAME 36*93d36fc9SDavid van Moolenbroek.Nm rsh 37*93d36fc9SDavid van Moolenbroek.Nd remote shell 38*93d36fc9SDavid van Moolenbroek.Sh SYNOPSIS 39*93d36fc9SDavid van Moolenbroek.Nm 40*93d36fc9SDavid van Moolenbroek.Op Fl 46dn 41*93d36fc9SDavid van Moolenbroek.Op Fl l Ar username 42*93d36fc9SDavid van Moolenbroek.Op Fl p Ar port 43*93d36fc9SDavid van Moolenbroek.Ar host 44*93d36fc9SDavid van Moolenbroek.Op command 45*93d36fc9SDavid van Moolenbroek.Nm 46*93d36fc9SDavid van Moolenbroek.Op Fl 46dn 47*93d36fc9SDavid van Moolenbroek.Op Fl p Ar port 48*93d36fc9SDavid van Moolenbroek.Ar username@host 49*93d36fc9SDavid van Moolenbroek.Op command 50*93d36fc9SDavid van Moolenbroek.Sh DESCRIPTION 51*93d36fc9SDavid van Moolenbroek.Nm 52*93d36fc9SDavid van Moolenbroekexecutes 53*93d36fc9SDavid van Moolenbroek.Ar command 54*93d36fc9SDavid van Moolenbroekon 55*93d36fc9SDavid van Moolenbroek.Ar host . 56*93d36fc9SDavid van Moolenbroek.Pp 57*93d36fc9SDavid van Moolenbroek.Nm 58*93d36fc9SDavid van Moolenbroekcopies its standard input to the remote command, the standard 59*93d36fc9SDavid van Moolenbroekoutput of the remote command to its standard output, and the 60*93d36fc9SDavid van Moolenbroekstandard error of the remote command to its standard error. 61*93d36fc9SDavid van MoolenbroekInterrupt, quit and terminate signals are propagated to the remote 62*93d36fc9SDavid van Moolenbroekcommand; 63*93d36fc9SDavid van Moolenbroek.Nm 64*93d36fc9SDavid van Moolenbroeknormally terminates when the remote command does. 65*93d36fc9SDavid van MoolenbroekThe options are as follows: 66*93d36fc9SDavid van Moolenbroek.Bl -tag -width XlXusernameX 67*93d36fc9SDavid van Moolenbroek.It Fl 4 68*93d36fc9SDavid van MoolenbroekUse IPv4 addresses only. 69*93d36fc9SDavid van Moolenbroek.It Fl 6 70*93d36fc9SDavid van MoolenbroekUse IPv6 addresses only. 71*93d36fc9SDavid van Moolenbroek.It Fl d 72*93d36fc9SDavid van MoolenbroekThe 73*93d36fc9SDavid van Moolenbroek.Fl d 74*93d36fc9SDavid van Moolenbroekoption turns on socket debugging (using 75*93d36fc9SDavid van Moolenbroek.Xr setsockopt 2 ) 76*93d36fc9SDavid van Moolenbroekon the 77*93d36fc9SDavid van Moolenbroek.Tn TCP 78*93d36fc9SDavid van Moolenbroeksockets used for communication with the remote host. 79*93d36fc9SDavid van Moolenbroek.It Fl l Ar username 80*93d36fc9SDavid van MoolenbroekBy default, the remote username is the same as the local username. 81*93d36fc9SDavid van MoolenbroekThe 82*93d36fc9SDavid van Moolenbroek.Fl l 83*93d36fc9SDavid van Moolenbroekoption or the 84*93d36fc9SDavid van Moolenbroek.Ar username@host 85*93d36fc9SDavid van Moolenbroekformat allow the remote name to be specified. 86*93d36fc9SDavid van Moolenbroek.It Fl n 87*93d36fc9SDavid van MoolenbroekThe 88*93d36fc9SDavid van Moolenbroek.Fl n 89*93d36fc9SDavid van Moolenbroekoption redirects input from the special device 90*93d36fc9SDavid van Moolenbroek.Pa /dev/null 91*93d36fc9SDavid van Moolenbroek(see the 92*93d36fc9SDavid van Moolenbroek.Sx BUGS 93*93d36fc9SDavid van Moolenbroeksection of this manual page). 94*93d36fc9SDavid van Moolenbroek.It Fl p Ar port 95*93d36fc9SDavid van MoolenbroekUses the given 96*93d36fc9SDavid van Moolenbroek.Pa port 97*93d36fc9SDavid van Moolenbroekinstead of the one assigned to the service 98*93d36fc9SDavid van Moolenbroek.Dq shell . 99*93d36fc9SDavid van MoolenbroekMay be given either as symbolic name or as number. 100*93d36fc9SDavid van MoolenbroekIf no command is given, note that 101*93d36fc9SDavid van Moolenbroek.Xr rlogin 1 102*93d36fc9SDavid van Moolenbroekis started, which may need a different daemon 103*93d36fc9SDavid van Moolenbroek.No ( Xr rlogind 8 104*93d36fc9SDavid van Moolenbroekinstead of 105*93d36fc9SDavid van Moolenbroek.Xr rshd 8 ) 106*93d36fc9SDavid van Moolenbroekrunning on the server; you want to pass the 107*93d36fc9SDavid van Moolenbroek.Xr rshd 8 108*93d36fc9SDavid van Moolenbroekport number in that case. 109*93d36fc9SDavid van Moolenbroek.El 110*93d36fc9SDavid van Moolenbroek.Pp 111*93d36fc9SDavid van MoolenbroekIf no 112*93d36fc9SDavid van Moolenbroek.Ar command 113*93d36fc9SDavid van Moolenbroekis specified, you will be logged in on the remote host using 114*93d36fc9SDavid van Moolenbroek.Xr rlogin 1 . 115*93d36fc9SDavid van Moolenbroek.Pp 116*93d36fc9SDavid van MoolenbroekShell metacharacters which are not quoted are interpreted on local machine, 117*93d36fc9SDavid van Moolenbroekwhile quoted metacharacters are interpreted on the remote machine. 118*93d36fc9SDavid van MoolenbroekFor example, the command 119*93d36fc9SDavid van Moolenbroek.Pp 120*93d36fc9SDavid van Moolenbroek.Dl rsh otherhost cat remotefile \*[Gt]\*[Gt] localfile 121*93d36fc9SDavid van Moolenbroek.Pp 122*93d36fc9SDavid van Moolenbroekappends the remote file 123*93d36fc9SDavid van Moolenbroek.Ar remotefile 124*93d36fc9SDavid van Moolenbroekto the local file 125*93d36fc9SDavid van Moolenbroek.Ar localfile , 126*93d36fc9SDavid van Moolenbroekwhile 127*93d36fc9SDavid van Moolenbroek.Pp 128*93d36fc9SDavid van Moolenbroek.Dl rsh otherhost cat remotefile \&"\*[Gt]\*[Gt]\&" other_remotefile 129*93d36fc9SDavid van Moolenbroek.Pp 130*93d36fc9SDavid van Moolenbroekappends 131*93d36fc9SDavid van Moolenbroek.Ar remotefile 132*93d36fc9SDavid van Moolenbroekto 133*93d36fc9SDavid van Moolenbroek.Ar other_remotefile . 134*93d36fc9SDavid van Moolenbroek.\" .Pp 135*93d36fc9SDavid van Moolenbroek.\" Many sites specify a large number of host names as commands in the 136*93d36fc9SDavid van Moolenbroek.\" directory 137*93d36fc9SDavid van Moolenbroek.\" .Pa /usr/hosts . 138*93d36fc9SDavid van Moolenbroek.\" If this directory is included in your search path, you can use the 139*93d36fc9SDavid van Moolenbroek.\" shorthand 140*93d36fc9SDavid van Moolenbroek.\" .Dq host command 141*93d36fc9SDavid van Moolenbroek.\" for the longer form 142*93d36fc9SDavid van Moolenbroek.\" .Dq rsh host command . 143*93d36fc9SDavid van Moolenbroek.Sh FILES 144*93d36fc9SDavid van Moolenbroek.Bl -tag -width /etc/hosts -compact 145*93d36fc9SDavid van Moolenbroek.It Pa /etc/hosts 146*93d36fc9SDavid van Moolenbroek.El 147*93d36fc9SDavid van Moolenbroek.Sh SEE ALSO 148*93d36fc9SDavid van Moolenbroek.Xr rcmd 1 , 149*93d36fc9SDavid van Moolenbroek.Xr rlogin 1 , 150*93d36fc9SDavid van Moolenbroek.Xr rcmd 3 , 151*93d36fc9SDavid van Moolenbroek.Xr hosts.equiv 5 , 152*93d36fc9SDavid van Moolenbroek.Xr rhosts 5 , 153*93d36fc9SDavid van Moolenbroek.Xr environ 7 154*93d36fc9SDavid van Moolenbroek.Sh HISTORY 155*93d36fc9SDavid van MoolenbroekThe 156*93d36fc9SDavid van Moolenbroek.Nm 157*93d36fc9SDavid van Moolenbroekcommand appeared in 158*93d36fc9SDavid van Moolenbroek.Bx 4.2 . 159*93d36fc9SDavid van Moolenbroek.Sh BUGS 160*93d36fc9SDavid van MoolenbroekIf you are using 161*93d36fc9SDavid van Moolenbroek.Xr csh 1 162*93d36fc9SDavid van Moolenbroekand put a 163*93d36fc9SDavid van Moolenbroek.Nm 164*93d36fc9SDavid van Moolenbroekin the background without redirecting its input away from the terminal, 165*93d36fc9SDavid van Moolenbroekit will block even if no reads are posted by the remote command. 166*93d36fc9SDavid van MoolenbroekIf no input is desired you should redirect the input of 167*93d36fc9SDavid van Moolenbroek.Nm 168*93d36fc9SDavid van Moolenbroekto 169*93d36fc9SDavid van Moolenbroek.Pa /dev/null 170*93d36fc9SDavid van Moolenbroekusing the 171*93d36fc9SDavid van Moolenbroek.Fl n 172*93d36fc9SDavid van Moolenbroekoption. 173*93d36fc9SDavid van Moolenbroek.Pp 174*93d36fc9SDavid van MoolenbroekYou cannot run an interactive command (like 175*93d36fc9SDavid van Moolenbroek.Xr rogue 6 176*93d36fc9SDavid van Moolenbroekor 177*93d36fc9SDavid van Moolenbroek.Xr vi 1 ) 178*93d36fc9SDavid van Moolenbroekusing 179*93d36fc9SDavid van Moolenbroek.Nm ; 180*93d36fc9SDavid van Moolenbroekuse 181*93d36fc9SDavid van Moolenbroek.Xr rlogin 1 182*93d36fc9SDavid van Moolenbroekinstead. 183*93d36fc9SDavid van Moolenbroek.Pp 184*93d36fc9SDavid van MoolenbroekStop signals stop the local 185*93d36fc9SDavid van Moolenbroek.Nm 186*93d36fc9SDavid van Moolenbroekprocess only; this is arguably wrong, but currently hard to fix for reasons 187*93d36fc9SDavid van Moolenbroektoo complicated to explain here. 188