Boolean expression issues


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Boolean expression issues
# 1  
Old 01-07-2011
Question Boolean expression issues

Hi everybody:

I'm working on a script to send emails with logs attached based on one single rule..."check if the number of errors has increased since the last time the script ran"

Basically what my script does is read from a previous file with the last trace of errors the previous error count, read the main log file to see if more errors has came out since the last time and compare those values. If the current count are greater than the previous one, then collect the logs and send them by email, here is the code:

Code:
#Get Previous ErrorCount variable

ERRORCOUNTPREV=`tail -1 /logs/MaxThread.log`
typeset -i ERRORCOUNTPREV
echo $ERRORCOUNTPREV >> $LOGFILE

#Set ERRORCOUNT to check_max_tomcat_threads.log for historical record

ERRORCOUNT=`grep -c maxThreads /logs/catalina.out`
echo $ERRORCOUNT >> $LOGFILE

if [["$ERRORCOUNT" > "$ERRORCOUNTPREV"]]
  then
     echo $ERRORCOUNT " errors were found on catalina.out on " $DATE " Previous error count was: " $ERRORCOUNTPREV>>$LOGFILE
     case $thehost in

                server01 )

When I run this script this throws me this output:

Code:
bash-3.00$ ./check_max_tomcat_threads_UAT.ksh 
./check_max_tomcat_threads_UAT.ksh[29]: [[6:  not found

So my concern here is that '>' is not a valid identifier for boolean expressions, or do I need to fix something else?

Any help will be highly appreciate.

Best Regards

Last edited by radoulov; 01-07-2011 at 07:29 PM.. Reason: Additional code tags.
# 2  
Old 01-07-2011
The error is in line 29 of your script and is presumably because you need spaces between [[ and "$ERRORCOUNT" (which would be better written as "${ERRORCOUNT}" while you are at it) and also between "$ERRORCOUNTPREV" and ]].

HTH
This User Gave Thanks to TonyFullerMalv For This Post:
# 3  
Old 01-07-2011
Begin by changing this:

Code:
[["$ERRORCOUNT" > "$ERRORCOUNTPREV"]]

to:

Code:
[[ "$ERRORCOUNT" -gt "$ERRORCOUNTPREV" ]]

This User Gave Thanks to radoulov For This Post:
# 4  
Old 01-07-2011
TonyFullerMalv & radoulov Thank you very much

Now it's working Smilie
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to assign result of boolean expression?

Hello I would to write the test on one line like : declare -i x=0 y=0 ........ some code assign value 0 or 1 to x and y ........ # if either x or y or both is set to 1, then do something if -o ; then do_something fi Any help is welcome (2 Replies)
Discussion started by: jcdole
2 Replies

2. Shell Programming and Scripting

Using boolean expression Bash script

Hi, Im trying to write a Bash script that calculates the least common subnet for two address. Theoretical: I have to change IP from decimal to binary, then apply XNOR on the two IPs. I tried to write this: #!/bin/bash echo "Ebter the first ip" read ip1 echo "Enter the second ip" read... (7 Replies)
Discussion started by: Miron
7 Replies

3. Shell Programming and Scripting

Boolean expression

hi, im learning python language. and my teacher gives me this question on class: Boolean expression : not (p or not q) what is the correct answer for that? i still dont understand, and please give me a link for a new beginner in python to learn. thanks (1 Reply)
Discussion started by: jazzyzha
1 Replies

4. Shell Programming and Scripting

'AND' boolean not working !!!!

Dear all, IT seems to be rather small issue, but is not resolved. What Google suggest does no work..! #!/bin/bash date jobNo=$(awk '/Jobs with... (4 Replies)
Discussion started by: emily
4 Replies

5. Shell Programming and Scripting

boolean expression in bash

Can someone, please, help me to make this condition valid/accepted in bash? I really cannot. I'm stuck with the brackets... This one tells me: missing `]' if ]; then # NOTIFY ERROR... fi And... I'd also appreciate a link to bash documents that explain these things. All... (2 Replies)
Discussion started by: mamboknave
2 Replies

6. Homework & Coursework Questions

Boolean expressions for If's

1. The problem statement, all variables and given/known data: Im experimenting with if expressions for an assignment. What i want to do is check if an input of read x y z will be checked against x for 1-999 for y for and for z for 1-999. Am i doing this right? or perhaps you could tell me... (0 Replies)
Discussion started by: Ren_kun
0 Replies

7. UNIX for Advanced & Expert Users

Find Boolean operators help

I was reading this find guide and I saw something with the -and option that I don't think is correct. Do you need the -and option in this? $ find /mp3-collection -name 'Metallica*' -and -size +10000k I found my file that was bigger than 500 MB with and without the -and option. ~ $ find /... (1 Reply)
Discussion started by: cokedude
1 Replies

8. Shell Programming and Scripting

Regular expression boolean in perl

How can I find out, that whether a regular expression are matched or not(as a boolean)?! tnx in advance. (2 Replies)
Discussion started by: Zaxon
2 Replies

9. Shell Programming and Scripting

boolean parameter

Hi, I'm calling an oracle procedure from shell script, this procedure has boolean parameter, the default is false, but I need to pass true value to the procedure... how can I do that in shell script , below is my script: ################ Initialise Environment ################# initialise()... (0 Replies)
Discussion started by: aya_r
0 Replies

10. Shell Programming and Scripting

trying to get a boolean response from sed

I have a file coming in with many columns, but the first character of the the coumn is a record type, if I wanted to get a true/false kind of response as to whether it contains at least one of each type of record how would be best? sed -e '/01/!d; /02/!d; /03/!d; /04/!d' datafile returns... (4 Replies)
Discussion started by: badg3r
4 Replies
Login or Register to Ask a Question