#!/bin/sh - # xrshio - a special-case, simple xrsh that allows stdio # Steve Kinzler, kinzler@cs.indiana.edu, Jan 00/Mar 00/Jan 02 # http://www.cs.indiana.edu/~kinzler/home.html#x11 case "$1" in ''|-h) echo "usage: $0 [ host | - ] command"; exit 1;; -) host="$REMOTEHOST";; # we use REMOTEHOST instead of DISPLAY for *) host="$1";; # cases like remote desktops esac; shift host=`echo "$host" | sed 's/:.*//'` lhost=${HOST-${HOSTNAME-`(hostname) 2> /dev/null`}} case "$lhost" in '') lhost=`uname -n`;; esac case "$lhost" in '') lhost=localhost;; esac case "$host" in ''|"$lhost"|"$lhost".*|localhost|localhost.*) exec /bin/csh -c "$*";; *) case "$RSHCMD" in # This works, and may be more general, but is very slow propogating X11 # through the ssh chain. # *ssh) exec $RSHCMD "$host" "$*";; *ssh) exec $RSHCMD -x "$host" \ exec /bin/csh -c "'setenv DISPLAY localhost:0; $*'";; *) exec rshp "$host" \ exec /bin/csh -c "'setenv DISPLAY $DISPLAY; $*'";; esac;; esac