I am assuming you are using bash or perhaps a POSIX shell like dash.
Your error is telling you that it is not possible to do such a task as these shells have INTEGER arithmetic only.
If you need floating/fixed point arithmetic then you will have to do workarounds using, bc, dc, python, perl, awk or any other methods that are capable of such mechanisms.
(Just an observation, you have both, ${barr1[$i]} and also ${harr1[j]} are these correct?)
EDIT:
Note the second one should have ${harr1[$j]}
An example longhand using INTEGER arithmetic and FIXED point, OSX 10.14.6, default bash terminal:
Last edited by wisecracker; 10-21-2019 at 02:50 PM..
Reason: See EDIT:
These 3 Users Gave Thanks to wisecracker For This Post:
I'm trying to write a simple script that takes all the .tar.gz files in a directory and verifies them by using the gzip -tv command:
for zip in *.tar.gz
do
gzip -tv $zip
if ; then #Check return code from tar
echo "File ${zip} verified OK."
exit... (4 Replies)
hi i am using bash shell to perform some subraction. here is what i have:
i have a while loop and am using i as a counter.
diff= `expr ${ARRAY1} - ${ARRAY2}`
for example array1 has -0.7145 and array2 has -0.7041.
when i try the above command, i get expr: non-numeric argument. any... (6 Replies)
I am trying to create a shell that asks the user to enter their name, and compare it to my own by saying we have the same name or saying my name and that they have a nice name too. Here is my script...
#!/bin/bash-x
echo "Enter your name".
read name
if
then
echo "My name is Adam too"... (1 Reply)
howdy,
so I'm make a plugin work for Nagios, and the commandline is:
/usr/lib/nagios/plugins/check_mssql -H MySQLServerName -u MySqlAccountName -p MyPassword(#XXXXX -d MyDatabaseName
it is barfing with:
bash: syntax error near unexpected token `('
Thoughts?
Do I have to wrap something... (2 Replies)
Hi all,
i'm making some test on a data file. Imagine i have two columns inside it :
80377,20
80377,20
80379,19
80378,20
80380,20
80382,20
80381,21
Just to understand how can it works, imagine to subtract 100 to the number in the first column when the other one in the second... (4 Replies)
The below bash function uses multiple variables CODING, SAMPLE, SURVEY, andvariant
in it. The user selects the cap function and details are displayed on the screen using the $SURVEY variable, the directory is changed to $SAMPLE and the samples.txt is opened so the user can select the sample to... (6 Replies)
In the bash function below if the user selets "y" then the menu function is called and if they select "n" the move function is called. That all seems to work, my question is after the files are moved an echo,
line in bold is displayed and another function called backup is called. I am getting a... (1 Reply)
#!/bin/bash
#--------------------------------------------------------
# Setup prompt
# Author Zeeshan Mirza
# Data: 06-08-2017
#--------------------------------------------------------
if
then
. ./.profile_custom_pre
fi
umask 022
set -o vi
export EDITOR=vi
export VISUAL=vi... (3 Replies)
Discussion started by: getzeeshan
3 Replies
LEARN ABOUT BSD
trapov
TRAPOV(3F)TRAPOV(3F)NAME
trapov - trap and repair floating point overflow
SYNOPSIS
subroutine trapov (numesg, rtnval)
double precision rtnval
DESCRIPTION
NOTE: This routine applies only to the older VAX 11/780's. VAX computers made or upgraded since spring 1983 handle errors differently.
See trpfpe(3F) for the newer error handler. This routine has always been ineffective on the VAX 11/750. It is a null routine on the
PDP11.
This call sets up signal handlers to trap arithmetic exceptions and the use of illegal operands. Trapping arithmetic exceptions allows the
user's program to proceed from instances of floating point overflow or divide by zero. The result of such operations will be an illegal
floating point value. The subsequent use of the illegal operand will be trapped and the operand replaced by the specified value.
The first numesg occurrences of a floating point arithmetic error will cause a message to be written to the standard error file. If the
resulting value is used, the value given for rtnval will replace the illegal operand generated by the arithmetic error. Rtnval must be a
double precision value. For example, ``0d0'' or ``dflmax()''.
FILES
/usr/lib/libF77.a
SEE ALSO trpfpe(3F), signal(3F), range(3F)BUGS
Other arithmetic exceptions can be trapped but not repaired.
There is no way to distinguish between an integer value of 32768 and the illegal floating point form. Therefore such an integer value may
get replaced while repairing the use of an illegal operand.
4.2 Berkeley Distribution May 15, 1985 TRAPOV(3F)