The best way is to do this with ssh and keys. But I wrote you a script for this. I dont think you should have to change anything in the script. Though the enviroment variable assignment is BASH only. Andrew Nemchenko wrote: > Yes I do have expect available, and I could use it, so if you can write it in expect.. > The reason that I dont use ssh, is because I dont want to set it up on every machine. > While using a script like this, is fast and easy. Also I'm not worried about security > since all these machines are on internal lan. Using ssh would just be too much of a > hasle. > > Jim Crumley wrote: > > > On Fri, Jun 01, 2001 at 11:34:51AM +0100, Andrew Nemchenko wrote: > > > > > > I need a script that would do this for me: > > > > > > xhost krypton > > > rlogin krypton > > > (enter login name) > > > (enter password) > > > export DISPLAY=my_ip_goes_here:0.0 > > > sunapp(an application that I need to run) > > > > > > if some one could please write a script that can do this for me I would really > > > apreciate it. I could probably do it my self but I left my bash book at home, and > > > dont want to puts around the man pages. > > > > Any particular reason not to use ssh? With ssh properly setup, > > all you'd have to do is "ssh kryton sunapp". (Of course, you > > may not have perms to setup ssh.) > > > > Anyway, to do this right, you probably want to expect, instead of > > bash. That's because entering login names and passwords requires > > waiting till you're prompted for them. That's a pain to do with > > regualr shells, but its expects bread and butter. So, do you > > have expect available? I'd write the script, if you do. > > > > -- > > Jim Crumley | > > crumley at fields.space.umn.edu | > > Work: 612 624-6804 or -0378 | > > _______________________________________________ > > tclug-list mailing list > > tclug-list at mn-linux.org > > https://mailman.mn-linux.org/mailman/listinfo/tclug-list > > ------ http://USFamily.Net/info - Unlimited Internet - From $8.99/mo! ------ -------------- next part -------------- #!/usr/bin/expect -- #Hack together expect script to set the display enviroment variable on a remote machine. if {$argc==0} { send_user "usage: $argv0 <HOSTNAME OR IP> <USER> <PASSWORD> <DISPLAY SETTING ie.15.15.15.15:0.0> <REMOTE APP TO LAUNCH>\n\n" exit } # HOSTNAME = [lindex $argv 0] # USERNAME = [lindex $argv 1] # USERPASSWORD = [lindex $argv 2] # DISPLAYENV = [lindex $argv 3] # APP = [lindex $argv 4] exp_version -exit 5.0 expect_before -i $user_spawn_id \003 exit set timeout 5 stty -echo set pid [spawn xhost [lindex $argv 0]] expect exec kill $pid set pid [spawn rlogin -l [lindex $argv 1] [lindex $argv 0]] expect "assword:" { send_user "[lindex $argv 2]" send "[lindex $argv 2]\r" } eof { send_user "rlogin spawn failed\n" exec kill $pid exit 1 } timeout { send_user "\n ## Never saw password prompt.\n" exit 1 } ## At a prompt Switch enter enviroment variable expect -re "(#|>|\\\$|%)" { send "export DISPLAY=[lindex $argv 3]\n" } eof { send_user "\n ## rlogin spawn failed\n" exec kill $pid exit 1 } timeout { send_user "\n ## Never saw command prompt.\n" exit 1 } ## At the next prompt lauch the app expect -re "(#|>|\\\$|%)" { send "[lindex $argv 4]&\n" } eof { send_user "\n ## rlogin spawn failed\n" exec kill $pid exit 1 } timeout { send_user "\n ## Never saw command prompt.\n" exit 1 } ## At the next prompt exit the rlogin expect -re "(#|>|\\\$|%)" { send "exit\n" } eof { send_user "\n ## rlogin spawn failed\n" exec kill $pid exit 1 } timeout { send_user "\n ## Never saw command prompt.\n" exit 1 } set timeout 60 expect exec kill $pid exit