#!/bin/sh
fact()
{
if [ $1 -gt 1 ] ; then
res=`expr $1 - 1`
p=`fact $res`
else
echo $1
fi
echo `expr $p \* $1`
}
echo "Enter a number you wish to calculate factorial of"
read NUM
echo "Factorial of $NUM is : " `fact $NUM`
~~~~~~~~~~~~~~~~~~~~~~~~
Code:
$ ./factorial.sh
Enter a number you wish to calculate factorial of
4
expr: syntax error
Factorial of 4 is : 24
WHy am I still getting this : "expr: syntax error"
Last edited by Franklin52; 08-13-2010 at 04:19 AM..
Reason: Please use code tags!
whats the purpose of the following script? who could run it? To what is the script refering that exceeds 75%? The mailbox?
What does sed 's/%//' do? (1 Reply)
if
then
if
then
echo "fst argument is $1 "
else
if
then
"fst argument is $1"
fi
fi
fi
Can anyone tell me. My requirement is tht pass a string ..
Check whether it contains "-". If yes then check if it... (1 Reply)
I want to take the even-numbered lines from a file and put them in a separate file and the same thing with the odd-numbered lines.
#!/bin/bash
file=$1
awk
'
{
if ( NR % 2 == 0)
{ (( getline < "$file" ) > "even.txt" )}
else
{ (( getline < "$file" ) > "odd.txt" )}
}
' $file (4 Replies)
if `egrep -c "safe_mode" /usr/local/lib/php.ini` - gt 0 && " `egrep -c "safe_mode" /usr/local/lib/php.ini` = "On" "
then
echo " Good "
exit
else
echo " Not Good ";
fi
and (4 Replies)
I am trying to find a value within a properties file and declare it into a variable. Script below. I want the "memSize" to be the branch from the properties file. Right now it always tells me "Not found" What am I doing wrong?
#!/bin/sh
memsize ='';
memSize=`sed '/^\#/d'... (8 Replies)
hi guys can you tell me if anything is wrong with this script, seems reasonable to me but somehow never works.
Script redacted for being too explicit (2 Replies)
Hi there,
i have a problem i have created followning sh files some years ago but now it dosen`t work anymore i never used it a long time. Can anyone find the Error? Its always runs the stop() block and trying to Killing the Server also if i try to start or creat a new one.
#!/bin/sh
stop()... (6 Replies)
Discussion started by: NewCannon
6 Replies
LEARN ABOUT V7
expr
EXPR(1) General Commands Manual EXPR(1)NAME
expr - evaluate arguments as an expression
SYNOPSIS
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
where relop is one of < <= = != >= >, 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
addition or subtraction of the arguments.
expr * expr
expr / expr
expr % expr
multiplication, division, or remainder of the arguments.
expr : expr
The matching operator compares the string first argument with the regular expression second argument; regular expression syntax is
the same as that of ed(1). 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:
To add 1 to the Shell variable a:
a=`expr $a + 1`
To find the filename part (least significant part) of the pathname stored in variable a, which may or may not contain `/':
expr $a : '.*/(.*)' '|' $a
Note the quoted Shell metacharacters.
SEE ALSO ed(1), sh(1), test(1)DIAGNOSTICS
Expr returns the following exit codes:
0 if the expression is neither null nor `0',
1 if the expression is null or `0',
2 for invalid expressions.
EXPR(1)