04-23-2008
expr is picky about its syntax, it wants spaces between everything; in particular, on both sides of parentheses, operators, variables, and, well, everything else. You also need to quote or backslash-escape the parentheses, otherwise you will get a warning from the shell. (Actually that's the warning you are getting at the mo.)
Last edited by era; 04-23-2008 at 11:32 AM..
Reason: Quote parens, too
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Fellows I ran in to a problem this morning and could not figure out a solution to it.
I have a file like
OBJECT="ABC" GFT="JHU"
DESCRIPTION="ABC MNCL JHDG "
OBJECT="ABC" GFT="JHU"
DESCRIPTION="ABC MNCL JHDG "
OBJECT="ABC" GFT="JHU"
DESCRIPTION="ABC MNCL JHDG "
DESCRIPTION="ABC MNCL JHDG "... (2 Replies)
Discussion started by: ajnabi
2 Replies
2. UNIX for Dummies Questions & Answers
I am using a script which does a lot of math and I am facing a problem.One value is greater than 10 mi and the script converts it to exponents i.e 70000000 7e...
and this is causing my statements to become invalid.
This is what I used
A=`expr "${total}-${FAC}"|bc`
where $total and $FAC are... (9 Replies)
Discussion started by: anujairaj
9 Replies
3. Shell Programming and Scripting
Hi all,
Here is my situation.
I have a text file TXT_FILE like this:
john 123456
jack 94589
kelvin 94595
mary 88585
I want to read the first word in each line ( the name ) and assign to a string variable ( EX_LIST ) in my script so that I can use later as this commandfor i in... (6 Replies)
Discussion started by: fongthai
6 Replies
4. Shell Programming and Scripting
I'm trying to get awk to do arithmetic functions with external variables and I'm getting an error that I cannot figure out how to fix.
Insight would be appreciated
money=$1
rate1=$(awk -F"\t " '/'$converting'/{print $3}' convert.table)
rate2=$(awk -F"\t"... (2 Replies)
Discussion started by: DKNUCKLES
2 Replies
5. Shell Programming and Scripting
Hi, I would like ask for you help for coding array operation.
array= ( a b c d e f )
I would like to remove entry "d" from my array and import the remaining entries back to the array.
Thanks. (3 Replies)
Discussion started by: phamp008
3 Replies
6. UNIX for Dummies Questions & Answers
Hi,
Can anyone explain me what is the functionality of this code
cat << EOF > $TSTFILE
/$1/ { print "SENT" }
EOF
Suggestions welcome
Thanks in advance (0 Replies)
Discussion started by: trichyselva
0 Replies
7. UNIX for Dummies Questions & Answers
I am trying to ask for full name in a script, Then echo back to the user with the surname only, omitting the first name.
Thanks (2 Replies)
Discussion started by: orjnet
2 Replies
8. Shell Programming and Scripting
/home8/mc09ats/UnixCw/file4
this is the path...i have 2 variables filename and filepath...i want
filename=file4
filepath=/home8/mc09ats/UnixCw
i.e. i think i have to find last occurence of "/" in string and the string after "/" want to take in some variable and string before last "/"... (4 Replies)
Discussion started by: AbhijitIT
4 Replies
9. Shell Programming and Scripting
I have a txt file with several columns and i want to peform an operation on two columns and output it to a new txt file .
file.txt
900.00000 1 1 1
500.00000
500.00000
100000.000
4
4
1.45257346E-07 899.10834 ... (4 Replies)
Discussion started by: shashi792
4 Replies
10. UNIX for Dummies Questions & Answers
dear all,
I need to get files from ftp when only files consist of words 'EUROPE'
ftp sources in folder /ftp1/ftp2/ftp3/201409
files inside /ftp1/ftp2/ftp3/201409is as below
201409_EUROPE_citizen.txt
201409_EUROPE_natality.txt
201409_EUROPE_occupancy.txt
201409_ASIA_citizen.txt... (1 Reply)
Discussion started by: radius
1 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)