How to restart the same step when return value is not equal to zero?
Hi Again Guru's
One of the requirements for the shell script is that when the return value of a given function is not equal to zero, it should have the option for the user to re-execute the function that has failed.
Example:
the script has different functions:
func_1()
func_2()
func_3()
func_4()
....
when func_1 fails, it should ask the user to make some necessrary corrections and once done, it should re-execute that same function.
Any idea will help.
below is the sample code.
Code:
#!/usr/bin/sh
#Function to get return value
func_getRetValue()
{
retValue=$?
if [ $retValue -gt 0 ]
then
echo "Encountered ERROR"
func_pause "Press any key when ready ..."
else
echo "NO ERROR FOUND"
func_pause "Press Any key to continue..."
fi
}
#function to wait for the user's prompt before proceeding
func_pause()
{
read -p "$*"
}
#Function to check if supplemental logging is enabled in Aexeo Database
func_enableSupplementalLoggingOnAexeoDB()
{
sqlplus -s ${userName}/${password}@//${hostname}/${oraInstance} <<EOF > ${logDir}/output.out
set heading off
SELECT SUPPLEMENTAL_LOG_DATA_MIN from v\$database;
EOF
#Check the output of the sql statement if it is "YES"
#if not run sql statemet to alter the table
status=`cat ${logDir}/output.out | sed '/^$/d' | tail -3`
if [ $status == "YES" ]
then
echo "Minimal supplemental logging is enabled in Aexeo Database"
echo "Status is ${status}"
elif [ $status != "YES" ]
then
echo "Supplemental logging is not enabled"
echo "Please login to Database and set SUPPLEMENTAL_LOG_DATA_MIN to \"YES\" "
fi
#func_pause "Once corrected press any key to continue ..."
}
func_createPartitionsVPDUsers()
{
}
#-----------------
# Main
#-----------------
step="${1:-0}"
while :
do
case $step in
0) : ;;
1) echo "Running Step 1 : Check supplemental logging in Aexeo Database is enabled"
func_enableSupplementalLoggingOnAexeoDB
retValue=$?
if [ $retValue -gt 0 ]
then
echo "Encountered ERROR"
func_pause "Press any key when ready ..."
else
echo "NO ERROR FOUND"
func_pause "Press Any key to continue..."
fi
;;
2) func_createPartitionsVPDUsers
;;
*) exit ;;
esac
((step=${step} + 1))
done
HI
I am new to unix and need to install sco unix on a new server - could anybody help me with the steps I need to take - the hd is a 9gb scsi drive (pretty old machine)
Thanks (1 Reply)
I am new to unix and server at my job crashed due to hardware problem. I'm now opted to install sco unix on a new server - could anybody help me with the steps I need to take (pretty old machine)
Thanks & Regards
Nancy :( (0 Replies)
Hi all,
The following script is fine when I work via command line
m=1
c=0
while
do
echo $m
gnokii --getsms IN $m > out.txt;
m=`expr $m + 1`;
cat out.txt >> message_log;
############
read first crap< <(sed -n '/Text:/{n;p;}' out.txt);
read message< <(sed -n '/Text:/{n;p;}'... (2 Replies)
Thank all of you.
May you explain step by step where and how I will add pseudo code
Note : I have Linux 2.6.24-26-server on x86_64
dears kindly help me (3 Replies)
Hi to all,
I don't know if someone has done sometime a MS Excel Macro, that allows us to press F8 over the code
to see step by step, to mention something, how is running the code, which values take the variables,
if some loop is executing correct or where a error occurs, and some other... (7 Replies)
Hi Guys,
does anyone know of a step by step guide on how configure apache2 web server in solaris 10?
I will really appreciate it.
Thanks a lot (1 Reply)
FYI,
I'm slowly removing a lot of the bold font-styles from titles of discussions, forum titles, etc
I'm not removing bold for the entire site because we do need bold from time to time, especially in posts and sometimes in other places.
However, the original forum style had way too much... (3 Replies)
Discussion started by: Neo
3 Replies
LEARN ABOUT PHP
sqlsrv_connect
SQLSRV_CONNECT(3)SQLSRV_CONNECT(3)sqlsrv_connect - Opens a connection to a Microsoft SQL Server databaseSYNOPSIS
resource sqlsrv_connect (string $serverName, [array $connectionInfo])
DESCRIPTION
Opens a connection to a Microsoft SQL Server database. By default, the connection is attempted using Windows Authentication. To connect
using SQL Server Authentication, include "UID" and "PWD" in the connection options array.
PARAMETERS
o $serverName
- The name of the server to which a connection is established. To connect to a specific instance, follow the server name with a
forward slash and the instance name (e.g. serverNamesqlexpress).
o $connectionInfo
- An associative array that specifies options for connecting to the server. If values for the UID and PWD keys are not specified,
the connection will be attempted using Windows Authentication. For a complete list of supported keys, see SQLSRV Connection
Options.
RETURN VALUES
A connection resource. If a connection cannot be successfully opened, FALSE is returned.
EXAMPLES
Example #1
Connect using Windows Authentication.
<?php
$serverName = "serverNamesqlexpress"; //serverNameinstanceName
// Since UID and PWD are not specified in the $connectionInfo array,
// The connection will be attempted using Windows Authentication.
$connectionInfo = array( "Database"=>"dbName");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
Example #2
Connect by specifying a user name and password.
<?php
$serverName = "serverNamesqlexpress"; //serverNameinstanceName
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
Example #3
Connect on a specifed port.
<?php
$serverName = "serverNamesqlexpress, 1542"; //serverNameinstanceName, portNumber (default is 1433)
$connectionInfo = array( "Database"=>"dbName", "UID"=>"userName", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>
NOTES
By default, the sqlsrv_connect(3) uses connection pooling to improve connection performance. To turn off connection pooling (i.e. force a
new connection on each call), set the "ConnectionPooling" option in the $connectionOptions array to 0 (or FALSE). For more information, see
SQLSRV Connection Pooling.
The SQLSRV extension does not have a dedicated function for changing which database is connected to. The target database is specified in
the $connectionOptions array that is passed to sqlsrv_connect. To change the database on an open connection, execute the following query
"USE dbName" (e.g. sqlsrv_query($conn, "USE dbName")).
SEE ALSO sqlsrv_close(3), sqlsrv_errors(3), sqlsrv_query(3).
PHP Documentation Group SQLSRV_CONNECT(3)