Condition for decimal numbers


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Condition for decimal numbers
# 1  
Old 12-29-2010
Condition for decimal numbers

Hi experts,

My number output has somehting like below

filename /temp
0.23
10.23

How do i put a condition to the above numbers?

e.g

if [ $temp > 0.1 ] then

the . seem to give me problems. Pls help.

thanks

---------- Post updated at 05:25 PM ---------- Previous update was at 05:23 PM ----------

another thing to add on is.

Need to put this is into a shell scripting using Unix. thanks
# 2  
Old 12-29-2010
Code:
val="$(echo "$temp" | sed 's/0.//')"
if [ $val -gt 1 ] ; then
     echo "greater"
fi

R0H0N
# 3  
Old 12-29-2010
Rohon,

if my condition which i am performing also has . how do i do that?

-gt 0.1
# 4  
Old 12-29-2010
Code:
% [[ 0.3 -gt 0.1 ]]&& echo OK||echo KO
OK
% [[ 0.3 -lt 0.1 ]]&& echo OK||echo KO
KO

R0H0N
# 5  
Old 12-29-2010
rohon,

i get this output. output seems ok whr my input file has the value 3.4

whats the error ./str %:not found?

temp=/tmp/st
+ % [[ /tmp/st -gt 0.1 ]]
./str: %: not found
+ echo KO
KO
# 6  
Old 12-29-2010
This code will handle any floating point expression correctly.
The "bc" will return 0=false, or 1=true:
Code:
if [ "$(echo $temp \> 0.1 | bc)" -eq 1 ]; then ....

# 7  
Old 12-29-2010
i realise its not taking the data from my input file.
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Decimal numbers and letters in the same collums: round numbers

Hi! I found and then adapt the code for my pipeline... awk -F"," -vOFS="," '{printf "%0.2f %0.f\n",$2,$4}' xxx > yyy I add -F"," -vOFS="," (for input and output as csv file) and I change the columns and the number of decimal... It works but I have also some problems... here my columns ... (7 Replies)
Discussion started by: echo manolis
7 Replies

2. Shell Programming and Scripting

Comparing decimal numbers between 0 and 1

For numbers between 0 and 1 the below logic is not working. Output of above shall be "correct" but its echoing "incorrect".Kindly suggest a=.1 if then echo correct else echo incorrect fi Video tutorial on how to use code tags in The UNIX and Linux Forums. (3 Replies)
Discussion started by: itsvikas
3 Replies

3. Shell Programming and Scripting

if test for higher value between 2 decimal numbers

Hi I would like to test for a max number value. It may be a decimal so I know I have to pipe into bc. I just cannot get the syntax for this to work. I cannot get passed an error with the bracket - see below. Any help appreciated. Regards Ewan This works: /export/home/ewan> cat... (5 Replies)
Discussion started by: emjs
5 Replies

4. UNIX for Dummies Questions & Answers

If then else for decimal numbers part2

Hi, I have a small problem with my script. I have everything in order but it doesnt seem to compare anything less than 1 correctly. If the input is more than 1, then the results is correct. If the input is 0.xxx (anything) it returns erroneous results. Pls help input=0.12 if ; then ... (7 Replies)
Discussion started by: streddy
7 Replies

5. Shell Programming and Scripting

Regarding decimal numbers

Hello... I am new to unix and I am wondering if in a C-shell script , Are we supposed to use only whole numbers........ for example..if a program needs to calculate the average of some numbers........ @ avg = (($1 +$2 + $3)/3)) is returning a whole number.........How can a decimal be... (7 Replies)
Discussion started by: ravindra22
7 Replies

6. Shell Programming and Scripting

Count the decimal numbers with 6 precision

Hi guys, I have a single column file with millions of records. I want to count the number of records with 6 decimal precision. for ex: 1234.12 1234.132 12345.12345 1234.1 1234.13 1234.123456 243435.454555 i need to count the number of records with precision of 6 ( i.e here the... (4 Replies)
Discussion started by: marcus_kosaman
4 Replies

7. Shell Programming and Scripting

Comparing Decimal Numbers

Im trying to compare two numbers with decimals but its not working as expected. a=1 b=1.1 if then echo "equal" fi When I do this it says that the numbers are equal. Ultimately Im using -le and -ge in the if statements but I tested with -eq for simplicity. Any way to make this... (3 Replies)
Discussion started by: Grizzly
3 Replies

8. Shell Programming and Scripting

decimal numbers

Hi friends How can I use "for loop" for decimal numbers? ex: 0.1 < x < 0.6 I used this commands but does'nt work. LIMIT=0.6 for ((x=0.1; x<=LIMIT; x++)) do - - - done Many thanks (1 Reply)
Discussion started by: snow
1 Replies

9. Shell Programming and Scripting

Devision of Decimal Numbers?

How can i devide decimal numbers? I am getting this kind of error: line 18: 200.2/40.234: syntax error in expression (error token is ".2/40.234") What can i do to work around this problem? Thanks for any advice. (4 Replies)
Discussion started by: Vozx
4 Replies

10. Shell Programming and Scripting

compare decimal numbers

Hi anyone, i need to compare two decimal numbers i thought that it could be do it with if but... :( So, i'm writing in csh and i really apreciate if anyone can help me if ( $ppl_kn <= $ppl_wb ) then echo "############# KNdiscount model has the lowest perplexity" set... (5 Replies)
Discussion started by: tmxps
5 Replies
Login or Register to Ask a Question