yeates@motcid.UUCP (Tony J Yeates) (04/24/91)
I was overwhelmed by the response to my query:- >Does anybody know a good way to get around this (ie export >your current environment to rsh). This seems to be a >severe restriction. (There were some more details too) Thank you all for taking the time to help, here's a brief summary (their were many variations, some of which I still need to try) of the replies, :- 1) Reset your path in .cshrc/.kshrc/.tcshrc. I'm actually doing this now, it works for ~90% of what I want to do, but it doesn't export my current PATH only my initial PATH. Also, I've seen a lot of people "bitten" by altering their PATH in their .cshrc - it seems a dubious practise IMHO. 2) Use SUN OS command "on". Definitely a possibility, although it is a little quirky (e.g. on <hostname>....I can't get a prompt), I'm told its a little "flakey" but I intend to investigate further. 3) Use: rsh <host> "setenv PATH $PATH; <command>" (or ksh equiv.) This works fine - but I don't want to have to type all that in each time I use an rsh. Creating a script or alias that works well proved more difficult than I had expected. The best result I got was this:- alias rshy "rsh \!^ \"setenv PATH ${PATH} ;\" \!:2*" which seems to work (csh & tcsh)e.g. rsh myhost1 'echo $PATH' (the single quotes are to prevent $PATH being expanded before the rsh is invoked). ------------------------------------------------------------------------------- JUST FOR INTEREST ================= Here is one of my attempts to export my whole environment (useful if you have tools which rely on env. variables):- [This was going to be another problem - but I just had a flash of inspiration] alias: alias rshx "rsh \!^ `env | sed -e 's/^/setenv /' | tr '\012' ';'` ; \!:2*" (Use rshx exactly as you would rsh, rsh <host> <command>) The sed part should really be replaced with a sed script file that quotes (") the value of each env. var., like:- env | sed -e 's/^/setenv /' -e 's/=/="/' -e 's/$/"/' | tr '\012' ';' (this works fine on the command line, but I found it a problem in an alias... a sed-file should prob fix that tho') ------------------------------- I also wanted to be able to invoke an rsh that would by default to my c.w.d., out of the above I salvaged this:- alias rshp "rsh \!^ cd $cwd ';' \!:2*" which seems to work okay (so far!)...doesn't work for rlogins via rsh unfortunatly tho'. -------------------------------------------------------------------------------