12-10-2008
It is possible that your script has defined the variable "value" as an integer (typeset -i value). The shell integer variables cannot hold very large numbers. Just hold them in a character field. Also, most versions of "expr" cannot deal with very large numbers.
To ensure that your variable "value" is a character variable "unset" it.
size=1000000
unset value
value=`echo "$size * (1024 ^ 6)"|bc`
echo $value
1152921504606846976000000
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hi everybody,
I want to know how can i use the command 'expr' to manipulate float number , i have a shell bash and when (for example) i do:
y1=`expr \( 1/ 16 \)`
it returns 0
and if i do
y1=`expr \( 1.6 / 16 \)`
it returns non numeric argument.
is there another command for mathematic... (4 Replies)
Discussion started by: mips
4 Replies
2. Shell Programming and Scripting
I need to accept a number of arguments at command line and print it in reverse order
i use eval `echo x=$1` to capture the argument
#! /bin/sh
counter=0
while
do
eval `echo x=$1`
arg$counter=$x
counter=`expr $counter + 1`
shift
done
but the error keeps... (1 Reply)
Discussion started by: scmay
1 Replies
3. Shell Programming and Scripting
i got a file called Marks
The format of Marks is:
12345678 5 7
23456789 7 9 3
What can i do with a loop, read expr and echo command to produce a new file like below:
12345678:12
23456789:20
and also when we adding fewer than 3 value with expr, we need to change any null value for... (13 Replies)
Discussion started by: mingming88
13 Replies
4. Shell Programming and Scripting
Hi all,
i am facing the error "expr: non-numeric argument" when i use the expr command.
Following is the expression which i want to execute
HR=$(echo `date +%H`)
MIN=$(echo `date +%M`)
TOT_MIN=`expr "$HR" \* 60+$MIN` | bc
echo $TOT_MIN
Here I am being reported with the error expr:... (6 Replies)
Discussion started by: sparks
6 Replies
5. Shell Programming and Scripting
i wrote this simple shell script
#!/bin/bash
read N1
read N2
expr $N1 + $N2
it work fine in bash and i add it on xinetd for some test but when i try to use in with telnet i got this error :
ehsan@debian:~$ telnet 192.168.1.4 1234
Trying 192.168.1.4...
Connected to 192.168.1.4.... (14 Replies)
Discussion started by: niasha
14 Replies
6. Shell Programming and Scripting
Hi,
I am trying to execute a simple script as below to compare a value from a file and copy that line based on a condition.
while read line
do
code_check = `expr substr "$line" 6 1`
if ; then
echo "${line}" >> /temp/bill/push_updated.dat
else
echo "line ignored"
fi
done <... (8 Replies)
Discussion started by: ramkiran77
8 Replies
7. Shell Programming and Scripting
Hi,
I am new to shell/bash script. I am trying to run below script
#!/bin/bash
a=0
b=10
if
then
echo "a is equal to be"
else
echo "a is not equal to be"
fi
MAX=10
while
do
echo $a
a='expr $a + 1'
done (1 Reply)
Discussion started by: Mallikgm
1 Replies
8. Shell Programming and Scripting
This is my code.... It works correct, but does not work with 4 and 5. My program is about finding average. so when i run 4 5 it gives me error "expr: non-integer argument".
But when i say sh average 45 67 it works. Whats wrong?how to fix it?
sum=0
n=0
if
then
for i in $*
do
if
... (2 Replies)
Discussion started by: Natalie
2 Replies
9. Shell Programming and Scripting
The username is of the format : 123456789110000-1234@something.com
With this below TCL procedure, I am trying add first and Sec Id and get third Id.
I checked in online compiler and it seems to work and add. However, when I am running this in my lab, I get error as "integer value too large to... (3 Replies)
Discussion started by: Shaibal_bp
3 Replies
10. Shell Programming and Scripting
Hi,
I tried to look up the issue i'm experiencing, but i'm confused what's wrong with my script.
After executing the script I'm getting the following error
expr: non-numeric argument
syntax error on line 1, teletype
After some research, it seems that the problem relates to bc.
I have... (1 Reply)
Discussion started by: nms
1 Replies
unset(n) Tcl Built-In Commands unset(n)
__________________________________________________________________________________________________________________________________________________
NAME
unset - Delete variables
SYNOPSIS
unset ?-nocomplain? ?--? ?name name name ...?
_________________________________________________________________
DESCRIPTION
This command removes one or more variables. Each name is a variable name, specified in any of the ways acceptable to the set command. If
a name refers to an element of an array then that element is removed without affecting the rest of the array. If a name consists of an
array name with no parenthesized index, then the entire array is deleted. The unset command returns an empty string as result. If -nocom-
plain is specified as the first argument, any possible errors are suppressed. The option may not be abbreviated, in order to disambiguate
it from possible variable names. The option -- indicates the end of the options, and should be used if you wish to remove a variable with
the same name as any of the options. If an error occurs, any variables after the named one causing the error are not deleted. An error
can occur when the named variable does not exist, or the name refers to an array element but the variable is a scalar, or the name refers
to a variable in a non-existent namespace.
EXAMPLE
Create an array containing a mapping from some numbers to their squares and remove the array elements for non-prime numbers:
array set squares {
1 1 6 36
2 4 7 49
3 9 8 64
4 16 9 81
5 25 10 100
}
puts "The squares are:"
parray squares
unset squares(1) squares(4) squares(6)
unset squares(8) squares(9) squares(10)
puts "The prime squares are:"
parray squares
SEE ALSO
set(n), trace(n), upvar(n)
KEYWORDS
remove, variable
Tcl 8.4 unset(n)