1.Use the interpreter for bash at first line . #!/bin/bash 2. Use variables as per requirement and pass it to except if needed. HOST="localhost" USER="chitti" PASS="123" CMD=$@ 3. Use expect script as required. XYZ=$(expect -c " spawn ssh $USER@$HOST expect \"password:\" send \"$PASS\r\" expect \"\\\\$\" send \"$CMD\r\" expect -re \"$USER.*\" send \"logout\" ") 4.Print the result of except using echo like echo "${XYZ}"
I've used a few techniques for this kind of reading but gets failed until I've read this fine blog . http://www.bashguru.com/2010/05/how-to-read-file-line-by-line-in-shell.html this helps a lot and i have developed a trick for me. Refer to the following example to examine the script : #!/bin/bash #SCRIPT: method2.sh #PURPOSE: Process a file line by line with redirected while-read loop . FILENAME=$1 count=0 while read LINE do let count++ echo "$count $LINE" done < $FILENAME echo -e "\nTotal $count Lines read" I have passed the file in the end of the loop so i didn't need to use pipe that is why i process the file in fastest manner and gives the required output in a quick manner. However i can use one more thing the File Descriptors. The File Descriptors are similar to the normal file pointers however in more analogue way.If you have used C then you will have familier with the the default file openers in C "st...