please help me in if command problem

 
Thread Tools Search this Thread
Operating Systems Linux Red Hat please help me in if command problem
# 1  
Old 01-04-2011
Data please help me in if command problem

Please help me this script !!!!

Script
*****

a=2.0.0.0
b=1.0.0.0
#if test $a -ge $b
if [ "$a" -ge "$b" ]
then
echo "A is Greater than B"
else
echo "B is Greater than A"
fi


i am getting following error

>sh abc
abc: line 6: [: 2.0.0.0: integer expression expected
B is Greater than A
# 2  
Old 01-04-2011
$a (2.0.0.0) and $b (1.0.0.0) are not numbers (integers) - the clue is in the error.
$a=2 and $b=1 would fix this.
This User Gave Thanks to citaylor For This Post:
# 3  
Old 01-04-2011
actually i am check version of package
that version is like that 0.0.0.0 format


how can i compare this !!!!
# 4  
Old 01-04-2011
Code:
...
if [ "${a%%.*}" -ge "${b%%.*}" ]
...

This User Gave Thanks to ctsgnb For This Post:
# 5  
Old 01-04-2011
thanksssssssssssssssssssssssssss ctsgnb

---------- Post updated at 03:29 PM ---------- Previous update was at 03:25 PM ----------

but it is checking first 2 digit aftr ( . )

i need to check all digit ..

a = 2.1.1.0
b = 2.1.1.1

as per script its telling same

how ??

---------- Post updated at 03:29 PM ---------- Previous update was at 03:29 PM ----------

Quote:
Originally Posted by ctsgnb
Code:
...
if [ "${a%%.*}" -ge "${b%%.*}" ]
...



but it is checking first 2 digit aftr ( . )

i need to check all digit ..

a = 2.1.1.0
b = 2.1.1.1

as per script its telling same

how ??
# 6  
Old 01-04-2011
You may have to convert them to proper numbers:
Code:
X="`echo $a | awk -F. '{ print ($1*1000)+($2*100)+($3*10)+$4 }'`"
Y="`echo $b | awk -F. '{ print ($1*1000)+($2*100)+($3*10)+$4 }'`"
if [ $X -ge $Y ]; then....

# 7  
Old 01-04-2011
Beware numbers and text

You have single digits that you are comparing. Are you sure that you will only see single digits? For example:
2.1.1.1 > 1.1.1.1 numerically and by text
13.1.1.1 ? 2.1.1.1 may be < if text, but > if number comparison
Login or Register to Ask a Question

Previous Thread | Next Thread

9 More Discussions You Might Find Interesting

1. AIX

I'm facing problem with rpm command, when running the command and appears this error:

exec(): 0509-036 Cannot load program /usr/opt/freeware/bin/rpm because of the following errors: 0509-022 Cannot load module /opt/freeware/lib/libintl.a(libintl.so.1). 0509-150 Dependent module /opt/freeware/lib/libiconv.a(shr4.o) could not be loaded. 0509-152 Member... (4 Replies)
Discussion started by: Ohmkar
4 Replies

2. Shell Programming and Scripting

Problem with tr command

Hi friends, Today I found one strange behaviour of the tr command. I used the following command: echo "NEE"|tr Sometimes it was giving "nee" as ouput . sometimes it was giving "NEE" as output. Finally I used the below code: echo "NEE"|tr "" "" ... and it gave me the correct... (17 Replies)
Discussion started by: neelmani
17 Replies

3. Shell Programming and Scripting

Problem with mv command and touch command

Hi guys, first of all I would say that this is my first time I write in a Forum. I've read the "forum rules" and I hope i will respect them. I searched everywhere for the solution of my problem but I didn't find anything. Here my problem: I'm using a sap job scheduler: in a particular job... (7 Replies)
Discussion started by: Antcam
7 Replies

4. Shell Programming and Scripting

Problem with command tr

Hello, excuse me for my english, i'm a french man. I have a problem with the command tr in applescript (with the accent...in french we have a lot of accents), i have read that is a problem with the version 10.5 of leopard then i would want to download the version 10.4 of universal binary of tr... (1 Reply)
Discussion started by: protocomm
1 Replies

5. Solaris

problem with ps command

Hi all I use to run sql loader inside a script with usename and password written in syntax. Now when I use 'ps' command to know about the status of loading, it also shows username and password that I don't want to share with someone who is sitting with me. If you have any idea except encryption... (1 Reply)
Discussion started by: sanjay1979
1 Replies

6. UNIX for Dummies Questions & Answers

problem with output of find command being input to basename command...

Hi, I am triying to make sure that there exists only one file with the pattern abc* in path /path/. This directory is having many huge files. If there is only one file then I have to take its complete name only to use furter in my script. I am planning to do like this: if ; then... (2 Replies)
Discussion started by: new_learner
2 Replies

7. Shell Programming and Scripting

problem with dd command or maybe AFS problem

Hi, folks. Sorry for bothering, but maybe someone could help me please. The problem is the following: there is some script that copies files from local file system to AFS. The copying is performed with dd command. The script copies data into some AFS volumes. The problem appeared with one... (0 Replies)
Discussion started by: Anta
0 Replies

8. UNIX for Dummies Questions & Answers

Problem with ps command??

I have a problem to.... (1).List the number of unique users that has active processes. (2).List the number of active processes for each of the users in (1). (3).Determine total memory usage for each user. Help me please....thank you. Best... (2 Replies)
Discussion started by: robocup
2 Replies

9. UNIX for Dummies Questions & Answers

problem with who command

Sorry for my poor english. Unix is SCO ODT ver 3.0 Mine problem is : when I login via some terminal emulator and type : who am i I see information like this : username ttyp02 Feb 28 09:53 after logoff and type who command (from some other terminal) I see that ttyp02 is still... (2 Replies)
Discussion started by: bane_yu
2 Replies
Login or Register to Ask a Question