Visit Our UNIX and Linux User Community


Shell script executing both the conditions.


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Shell script executing both the conditions.
# 1  
Old 11-26-2012
Shell script executing both the conditions.

I have written this script. This is used for creating a backup folder.

Code:
#!/bin/sh
#set -x
. /home/.profile
usage="Usage is $0"
usage="$usage [-b <dir>]"
# Use the getopt utility to set up the command line flags.
set -- `/usr/bin/getopt b: $*`
# Process individual command line arguments
while [ $1 != -- ]; do
  case $1 in
    -b)  dir=$2
         shift
         ;;
    esac
  shift
done
MYSQLBACKUP=`which mysqlbackup`
if [ "$backup_dir" == "" ];then
datedir=`date +"%Y%m%d"`
backupdir=/home/back
$MYSQLBACKUP --defaults-file=$INSTANCE_HOME/my.cnf --backup-dir=$backupdir/$datedir --compress backup
if [ $? -eq 0 ]; then
   start_lsn=`grep -E 'start_lsn' variables.txt`
   end_lsn=`grep -E 'end_lsn' variables.txt`
         exit 1
else
   echo " [`date +%Y\-%m\-%d\ %H\:%M\:%S`] [ERROR] Backup Failed. Please check"
   echo "backup failed." |mailx -s "full backup failed." abc.com 
fi
fi

The problem is that even when the command is executing without any error it is pring the commands in the success block (when if is true) but it is also printing the commands in the unsuccessfull block (else condition) too.
any suggestions?Smilie

Moderator's Comments:
Mod Comment Please view this code tag video for how to use code tags when posting code and data. It was not that difficult to follow the rules you accepted, but refused to comply with after many warnings...

Last edited by vbe; 11-26-2012 at 01:27 PM..
# 2  
Old 11-26-2012
Since the user cummulated enough Infraction point to be banned automaticaly by the system, I see no reason to leave this thread open, so I am closing it...

Previous Thread | Next Thread
Test Your Knowledge in Computers #280
Difficulty: Easy
CPU modes (also called processor modes, CPU states, CPU privilege levels and other names) are operating modes for the central processing unit of some computer architectures that place restrictions on the type and scope of operations that can be performed by certain processes being run by the CPU.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Executing if dynamic conditions in awk

Hi All, I got struck at the below point where i am unable to get the desired output after forming the dynamic conditions.Below is the design. 1. We are getting inputs from the shell arguments and storing in a variable like below. CONDITIONS="1=CT,2=US_10,3=CT_US_10" 2. After this i am... (14 Replies)
Discussion started by: cskumar
14 Replies

2. Shell Programming and Scripting

How to use SQL Hard Code Conditions in UNIX Shell Script?

Hi All, I am trying to place one SQL query in Shell Script with Where Condition as Status='1' But after running the the script it is returning error as SQL0206N "1" is not valid in the context where it is used. SQLSTATE=42703 The query is working fine in Data Base. Please suggest... (1 Reply)
Discussion started by: sumanmca2006
1 Replies

3. Shell Programming and Scripting

Why we use -f while executing any shell script?

Hi All, I wanted to know why we use the '-f' option while executing script. in my case... abcd.sh -f any_evts 02 2014 abcd = Scriptname -f = dont know any_evts = Some file or string 02= month 2014 = year So in above pleas ehelp to understand here -f and other arguement like... (1 Reply)
Discussion started by: ajju
1 Replies

4. UNIX for Dummies Questions & Answers

Shell script to extract data from csv file based on certain conditions

Hi Guys, I am new to shell script.I need your help to write a shell script. I need to write a shell script to extract data from a .csv file where columns are ',' separated. The file has 5 columns having values say column 1,column 2.....column 5 as below along with their valuesm.... (1 Reply)
Discussion started by: Vivekit82
1 Replies

5. Shell Programming and Scripting

Executing a shell script using sh

Platform : Solaris 10, RHEL 5.4, OEL 6 I've noticed that some of my colleagues execute scripts by typing sh before the script name sh myscript.shI always execute a script by typing the script name and typing enter provided PATH variable has . (current directory) in it myscript.sh (and... (1 Reply)
Discussion started by: John K
1 Replies

6. Shell Programming and Scripting

Executing a shell script

LD_LIBRARY_PATH=~/tme-0.8/bus/multibus:~/tme-0.8/bus/sbus:~/tme-0.8/dist/softfloat/softfloat/bits32:~/tme-0.8/dist/softfloat/softfloat/bits64:~/tme-0.8/generic:~/tme-0.8/host/bsd:~/tme-0.8/host/gtk:~/tme-0.8/host/posix:~/tme-0.8/ic:~/tme-0.8/ic/ieee754:~/tme-0.8/ic/m68k:~/tme-0.8/ic/sparc:~/tme-0.8/... (1 Reply)
Discussion started by: lucky7456969
1 Replies

7. UNIX for Dummies Questions & Answers

multiple if conditions and EOF in a shell script

I want to create an IF condition with multiple condition, in the statement below I want to add OR EOF, can any one please advise how to do. if } != $sample ] && ; then echo ..... fi code tags please (1 Reply)
Discussion started by: analyst
1 Replies

8. Shell Programming and Scripting

How to Use Multiple if Conditions in Shell script

if -o ] then echo "Expected valid value" The above multiple if condition is NOT working in my script. I am getting the error as '-a' not expected. Can anyone help with the syntax for this? (5 Replies)
Discussion started by: dinesh1985
5 Replies

9. UNIX for Dummies Questions & Answers

Executing a Shell Script

I am trying to run a shell script using the ./<ScriptName> command, but the server returns an error bash: ./Script1.sh: Permission denied What variable do I need to set to avoid this? (4 Replies)
Discussion started by: igandu
4 Replies

10. UNIX for Advanced & Expert Users

Shell script is not executing

Hi, I am trying to execute the below shell script: script name(ss1). ss1 was given permission - 744 before executing. name: ss1 #ss1 #usage:ss1 ls who pwd :wq I tried to execute $ss1 (Enter) Its not executing.... It says that ss1 is not found: echo $SHELL. The o/put i got is... (5 Replies)
Discussion started by: dreams5617
5 Replies

Featured Tech Videos