Sponsored Content
Top Forums Shell Programming and Scripting How to use 'expect' to pass UID & Password to a "for loop" in shell script? Post 302873157 by in2nix4life on Monday 11th of November 2013 09:01:33 AM
Old 11-11-2013
Here's a very basic way using Expect that should hopefully set you on the path to what you want to accomplish:

Code:
#!/usr/bin/expect -f
#
#

# set credentials - NOT RECOMMENDED METHOD
set u "username"
set p "password"

# get host name from command-line
set h [lindex $argv 0]

# set the command to run
set cmd "date"

# spawn a connection to the host and
# run the given command
spawn ssh -t $u@$h $cmd

# handle the password prompt
expect "?assword:*"
send -- "$p\r"
send -- "\r"

# done
expect eof

I've found reading files using Expect to be a bit flaky, so you could use a while loop to parse your file with the hostnames and feed it to the Expect script like so:

while read hosts;do sendCmd $hosts;done < server_list

Output:

spawn ssh -t username@server1 date
username's Password:
Mon Nov 11 08:52:42 EST 2013
Connection to server1 closed.

75d6b64809eec8e415f7bca6b09b6f40

Last edited by in2nix4life; 11-12-2013 at 01:50 PM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

shell script & sqlplus "plzz help"

hi friends, i m tryin to load data from one set of table to other i have sql procedure al ready for it..! i m going to load the procedure only if data in one of my table for example table "landing " have 10 records each attribute of this table is file_name status date ... (2 Replies)
Discussion started by: kulbir
2 Replies

2. Shell Programming and Scripting

How to include RETURN KEY with Background process "&" in Shell Script

Hello All, I am a newbie in Shell script programming, and maybe you can help me with my query. I need to write a shell script (mntServer.ksh) that will start a background process and also to be able to run another script. The mntServer.ksh script contains: #!/bin/ksh... (1 Reply)
Discussion started by: racbern
1 Replies

3. Shell Programming and Scripting

ssh through "expect" in shell script

Hi, I am trying to use "Expect" in shell script to ssh and do some work in remote server but I am unable to connect. Here is the code I am using. #save as test.sh set ip "10.10.10.10" set username "uname" set password "upass" spawn ssh $username@$ip expect "Password:" send... (8 Replies)
Discussion started by: shekhar2010us
8 Replies

4. Red Hat

files having Script which works behind "who" & "w" commands

Dear All, plz print the path of files which have the script of "who" & "w" commands. thnx in advance. (6 Replies)
Discussion started by: saqlain.bashir
6 Replies

5. Shell Programming and Scripting

Passing username and password to a script running inside "expect" script

Hi I'm trying to run a script " abc.sh" which triggers "use.sh" . abc.sh is nothing but a "expect" script which provides username and password automatically to the use.sh script. Please find below the scripts: #abc.sh #!/usr/bin/expect -f exec /root/use.sh expect "*name*" send... (1 Reply)
Discussion started by: baddykam
1 Replies

6. Shell Programming and Scripting

Shell script using expect to login to couple of remote servers and read "crontab -l"

I need a shell script using expect to login to couple of remote servers and read "crontab -l -u <username>" & "cat /etc/rc.local" & "df -h" and able to create output into a file saved locally with hostname.crontab & hostname.rc.local & disk.status. I can supply a file as list of hostname or IP... (4 Replies)
Discussion started by: jaipsharma
4 Replies

7. AIX

How to use 'expect' to pass UID & Password to a "for loop" in shell script?

Friends, Need someone's help in helping me with the below requirement for a script: > For a list of servers(over 100+), I need to login into each of them(cannot configure password-less ssh) & grab few configuration details < I know, this is possible through expect programming in a simple... (2 Replies)
Discussion started by: thisissouvik
2 Replies

8. Shell Programming and Scripting

How to pass password to "su account" in script?

Hi, I need to run a test script to check all test accounts, is it possible to pass the password to su in following command? I've got following error: $ echo "${password}" | su ${test_account} -c "check_account.sh" standard in must be a tty Thank you. - j (3 Replies)
Discussion started by: hce
3 Replies

9. Shell Programming and Scripting

Can someone please show me a very simple "expect" script to change password in Solaris please?

Ladies & Gents, Can one of you gurus please show me a very simple "expect" script to change the password in Solaris in a script, please? Nothing fancy, no error checking, no nothing. Just to change the password of a new user, it's all. Many thanks in advance. U guys have honestly earned my... (1 Reply)
Discussion started by: Hiroshi
1 Replies

10. Shell Programming and Scripting

Expect: spawn id exp5 not open while executing "expect "$" { send "sudo su -\r" }"

Hi All, i am trying to ssh to a remote machine and execute certain command to remote machine through script. i am able to ssh but after its getting hung at the promt and after pressing ctrl +d i am gettin the out put as expect: spawn id exp5 not open while executing "expect "$" {... (3 Replies)
Discussion started by: Siddharth shivh
3 Replies
XRLOGIN(1)						      General Commands Manual							XRLOGIN(1)

NAME
xrlogin - start an xterm that uses ssh (or optionally rlogin or telnet) to connect to a remote host SYNOPSIS
xrlogin [-l username] [-rlogin|-telnet] [xterm options] remote-host DESCRIPTION
Xrlogin opens an xterm window and runs ssh, rlogin or telnet to login to a remote host. Xrlogin automatically passes the -name argument to xterm with a value of "xterm-hostname" where hostname is the name of the remote host. This allows the user to specify resources in their server's resource manager which are specific to xterms from a given host. For example, this feature can be used to make all xterm windows to a given remote host be the same color or use a specific font or start up in a spe- cific place on the screen. Xrsh(1) passes the same string so they are compatible in this regard. Xrlogin specifies that the default title for the new xterm will be "hostname" where hostname is the name of the remote host. This and the -name argument above can be overridden with xterm-options on the command line. One could also use xrlogin's sister command xrsh(1) to open a window to a remote host. In the case of xrsh, the xterm would run on the remote host and use X as the connection protocol while xrlogin would run the xterm on the local host and use rlogin or telnet as the con- nection protocol. See xrsh(1) for a discussion of the merits of each scheme. OPTIONS
-l username When not using -telnet, use username as the id to login to the remote host. -rlogin Use the rlogin protocol to open the connection. In general rlogin is preferred because it can be configured to not prompt the user for a password. Rlogin also automatically propagates window size change signals (SIGWINCH) to the remote host so that applications running there will learn of a new window size. -telnet Use the -telnet protocol to open the connection. Use of telnet provided mostly for hosts that don't support rlogin. COMMON PROBLEMS
Make sure that the local host is specified in the .rhosts file on the remote host or in the remote hosts /etc/hosts.equiv file. See rlogin(1) for more information. EXAMPLES
xrlogin -bg red yoda Start a local red xterm which connects to the remote host yoda using rlogin. xrlogin -telnet c70 Open a local xterm which connects to the remote host c70 using telnet. SEE ALSO
xrsh(1), rlogin(1), telnet(1) AUTHOR
James J. Dempsey <jjd@jjd.com> and Stephen Gildea <gildea@intouchsys.com>. X Version 11 Release 6 XRLOGIN(1)
All times are GMT -4. The time now is 01:26 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy