09-20-2010
Addition
Hi all,
I am very new to shell programming and trying to learn out the basics.
I tried this:
$ echo `expr 20 + 30`
and it worked. But when i tried this,it does not work.
$ a=20
$ b=30
$ echo `expr a + b`
The error is:
expr: non-numeric argument
I cant understand why its throwing me this error
Pleas explain and solve my problem
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi all,
I am new to perl.
I need help adding bunch of numbers.
I have a file look like this:
1
1
2
1
2
3
1
2
3
4
1 (2 Replies)
Discussion started by: email-lalit
2 Replies
2. UNIX for Dummies Questions & Answers
I have to create un counter and I am unable to do an additition:
#!/bin/sh
count=$1
while ]
do
echo $count
$count=$count+$1
done (1 Reply)
Discussion started by: cfg
1 Replies
3. Shell Programming and Scripting
Hi all,
I am getting following output by using commands like sort, uniq and awk to the standard output.
110 d
40 a
59 c
9 b
3 e
Now at the end I would like to add all the numbers in column 1 and display the count of all numbers i.e. (110 + 40 + 59 + 9 + 3).
Also the output may... (3 Replies)
Discussion started by: tenderfoot
3 Replies
4. Shell Programming and Scripting
Hi,
I want to add 3 new fields in the existing file.Please find the example below.
input:
UID: ABCD
UNAME: XYZ
Desired Output
Tmiestamp: 20101208
UID: ABCD
UNAME: XYZ
DEPTNO:40
ModifyTImestamp:20101209
If you see the above i have added the 3 columns manually in the output section... (2 Replies)
Discussion started by: Nani7574
2 Replies
5. Shell Programming and Scripting
Hi I need to do the following substitution
I have to look for line starting with ABC and add 4 ":" before the first occurence of "+"in that line
Input
ABC:12:Lambert:C278472:1357:0:0:0:0:2:N::::N:9045123:NAP::+DEF
output
ABC:12:Lambert:C278472:1357.00:0.00:0:0:0:2:N::::N:9045123:NAP::::::+DEF... (5 Replies)
Discussion started by: mad_man12
5 Replies
6. Shell Programming and Scripting
How would I print out the total amount through awk? I tried using
print "Total Amount: " $4+$4;
Would I have to do a for loop to get through everything? (2 Replies)
Discussion started by: Boltftw
2 Replies
7. Shell Programming and Scripting
a=10.00
pattern=-11.00
b=`echo "$a $pattern" | awk ' printf("%d\n", $1 + $2)'`
echo $b
not working, also trined bc ,dc but thats not on my m/c.
also expr not supporting.
any clue? (6 Replies)
Discussion started by: saluja.deepak
6 Replies
8. Shell Programming and Scripting
by the script, two files Q1 and Q2 will be generated on the system. Q1 will contain an integer number and Q2 also contain an integer number. i would like to add those numbers and put into new file.
excerpt from my script
22 subcount=`echo $dir/Q$qid.txt` + `echo $dir/Q$qid.txt`
23 echo... (1 Reply)
Discussion started by: lookinginfo
1 Replies
9. UNIX for Dummies Questions & Answers
whats wrong with this addition?
Whats the maximum number of digits can be handled?
pandeeswaran@ubuntu:~/Downloads$ const=201234454654768979799999
pandeeswaran@ubuntu:~/Downloads$ let new+=const
pandeeswaran@ubuntu:~/Downloads$ echo $new
-2152890657037557890
pandeeswaran@ubuntu:~/Downloads$ (4 Replies)
Discussion started by: pandeesh
4 Replies
10. Shell Programming and Scripting
Hello all
I have a statement :
ARRAY_MOUNT_POINT_NAME=`df -h | awk '{print $6}'| head -`expr $i+2` |tail -1`
when the value of i=0 , I want the head argument to be at -2 . Using the expr statement isnt working.
Help ! (5 Replies)
Discussion started by: Junaid Subhani
5 Replies
expr(1) General Commands Manual expr(1)
Name
expr - evaluate expressions
Syntax
expr arg...
Description
The arguments are taken as an expression. After evaluation, the result is written on the standard output. Each token of the expression is
a separate argument.
The operators and keywords are listed below. The list is in order of increasing precedence, with equal precedence operators grouped.
expr | expr Yields the first expr if it is neither null nor 0. Otherwise yields the second expr.
expr & expr Yields the first expr if neither expr is null or 0. Otherwise yields 0.
expr relop expr The relop is one of < <= = != >= > and yields 1 if the indicated comparison is true, '0' if false. The comparison is
numeric if both expr are integers, otherwise lexicographic.
expr + expr
expr - expr
Yields addition or subtraction of the arguments.
expr * expr
expr / expr
expr % expr
Yields multiplication, division, or remainder of the arguments.
expr : expr The matching operator compares the string first argument with the regular expression second argument; regular expres-
sion syntax is the same as that of The (...) pattern symbols can be used to select a portion of the first argument.
Otherwise, the matching operator yields the number of characters matched ('0' on failure).
( expr ) parentheses for grouping.
Examples
The first example adds 1 to the Shell variable a:
a=`expr $a + 1`
The second example finds the file name part (least significant part) of the pathname stored in variable a,
expr $a : '.*/(.*)' '|' $a
Note the quoted Shell metacharacters.
Diagnostics
The command returns the following exit codes:
0 The expression is neither null nor '0'.
1 The expression is null or '0'.
2 The expression is invalid.
See Also
ed(1), sh(1), test(1)
expr(1)