Add Two Variables

Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Add Two Variables
# 1  
Old 05-02-2002
Add Two Variables

I hope this is not a stupid question. I need to add two script variables and expr give me an error message saying "non-numeric argument." But they have numeric values. BTW, I am using Borne shell. Any comments will be appreciated.
# 2  
Old 05-03-2002
Could you post the command?
# 3  
Old 05-03-2002
Sure. Here it is.

for L in `cat abc.txt`
i=`expr $i + 1`
if [ $i -eq 28 ]; then
echo "A is $A, and L is $L."
A=`expr $A + $L`
echo "A is $A"

So, line 28 of abc.txt has a numeric value and nothing else.
# 4  
Old 05-03-2002
bc command, if you have it...

There is a bc command. Use *, /, +, - for mult, division, add, subtract. It works with variables.

Try this.

echo 2*3 | bc > total.out

Assign variables...

echo $sum1*$sum2 | bc > var1
echo $sum1/$sum2 | bc > var2
echo $sum2-$sum1 | bc > var3

Hope this helps!!

# 5  
Old 05-03-2002
Thanks for the information about bc. It sounds very promising. I tried bc from the terminal and from simple scripts. But I do get a strange error:

syntax error on line 1, teletype

Any suggestion?
# 6  
Old 05-03-2002
Does it still work?

It may be an OS or shell related error. What OS do you have? Mine is HPUX, (posix shell, aka bourne/korn shell)

Post your command. So everyone can see it.

You could try and do chsh to ksh first if you are not using that already.

You can also type bc at the prompt and then it acts as a calculator, type quit to exit...

# 7  
Old 05-03-2002
Thanks. I finally found the problem. I was reading a text file and trying to add the value on line 28 to another variable. The problem was the text file was zipped in DOS and then sent to me. So, it contains an extra control code (control-M). Once I delete the control code, bc works great. Really appreciate your help.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to pass variables into anothother variables?

Below are three variables, which I want to pass into variable RESULT1 username1=userid port1=8080 How can I pass these variables into below code... RESULT1=$((ssh -n username1@poihostname1 time /usr/sfw/bin/wget --user=sam --password=123 -O /dev/null -q... (4 Replies)
Discussion started by: manohar2013
4 Replies

2. Shell Programming and Scripting

Passing awk variables to bash variables

Trying to do so echo "111:222:333" |awk -F: '{system("export TESTO=" $2)}'But it doesn't work (2 Replies)
Discussion started by: urello
2 Replies

3. Shell Programming and Scripting

BASH arrays and variables of variables in C++

Sometimes it is handy to protect long scripts in C++. The following syntax works fine for simple commands: #define SHELLSCRIPT1 "\ #/bin/bash \n\ echo \"hello\" \n\ " int main () { cout <<system(SHELLSCRIPT1); return 0; } Unfortunately for there are problems for: 1d arrays:... (10 Replies)
Discussion started by: frad
10 Replies

4. Shell Programming and Scripting

Running a script with multiple variables like 25 variables.

Hi All, i have a requirement where i have to run a script with at least 25 arguements and position of arguements can also change. the unapropriate way is like below. can we achieve this in more good and precise way?? #!/bin/ksh ##script is sample.ksh age=$1 gender=$2 class=$3 . . .... (3 Replies)
Discussion started by: Lakshman_Gupta
3 Replies

5. Shell Programming and Scripting

[Solved] Working with date (add minutes using variables)

Dear all, today I'm scratching my head with a simple (I believe) issue. Working with date is quite simple, so if I Need to add some seconds to current time, I'll use: date --date='+30 seconds' +"%Y-%m-%d %H:%M:%S"But, how to pass the value to add from a variable? I tried the following without... (2 Replies)
Discussion started by: Lord Spectre
2 Replies

6. Shell Programming and Scripting

Read file and for each line replace two variables, add strings and save output in another file

Hi All, I have a file, let's call it "info.tmp" that contains data like this .. ABC123456 PCX333445 BCD789833 I need to read "info.tmp" and for each line add strings in a way that the final output is put /logs/ua/dummy.trigger 'AAA00001.FTP.XXX.BLA03A01.xxxxxx(+1)' where XXX... (5 Replies)
Discussion started by: Andy_ARG
5 Replies

7. Shell Programming and Scripting

[Solved] Find Specific records from file and add totals into variables

Hi Eveyone, I am working on one shell script to find the specific records from data file and add the totals into variables and print them. you can find the sample data file below for more clarification. Sample Data File: PXSTYL00__20090803USA CHCART00__20090803IND... (7 Replies)
Discussion started by: veeru
7 Replies

8. Shell Programming and Scripting

bash - add backslash in front of variables w/ spaces

Hello, Im writing a script that works by recursively going into directories with find. But I have some directories that have spaces in them.. so I need to parse the variables to add a backslash before the spaces. Im not exactly sure how how to do this in bash, and honestly I dont think I know... (3 Replies)
Discussion started by: trey85stang
3 Replies

9. Programming

How to convert byteArray variables to HexaString variables for Linux?

Hello everybody, I am having problem in converting byte array variables to Hexa String variables for Linux. I have done, converting byte array variables to Hexa String variables for Windows but same function doesn't work for linux. Is there any difference in OS ? The code for Windows is given... (2 Replies)
Discussion started by: ritesh_163
2 Replies

10. Solaris

Add environment variables for all users

hi I need to add environment variables for all users and make them available when they login. I don't know which file to edit. Also these variables should be displayed when "env" command is executed. Please help....which file is common for all users, without editing their specific .profile or... (2 Replies)
Discussion started by: ashish_uiit
2 Replies
Login or Register to Ask a Question