Sponsored Content
Full Discussion: Bash Shell script--need help
Top Forums Shell Programming and Scripting Bash Shell script--need help Post 302340870 by Irishboy24 on Tuesday 4th of August 2009 02:26:59 PM
Old 08-04-2009
Bash Shell script--need help

Hi all,

i am beginner to unix and trying out a shell script which does the following. i have to calculate a persons salary. his salary is read from the keyboard. he has two types of deductions. 40% as dearness allowance and 20% as house rent. i have to print the gross salary. here is the code i've come up with. when i executed the shell script it says

expr: non-numeric argument

Code:
#!/bin/bash
echo what is your salary\?
read salary
DA=0.4
Deduction=`expr $DA \* $salary`
rent=0.2
rentdeduct=`expr $rent \* $salary`
grossalary=`expr $salary - \($Deduction + $rentdeduct\)`
echo $grossalary

thanks chaitanya

---------- Post updated at 01:26 PM ---------- Previous update was at 01:13 PM ----------

hey guys, i modified the script a little here is the code now

Code:
#!/bin/bash
echo what is your salary\?
read salary
DA=0.4
Deduction=`echo $DA \* $salary | bc`
rent=0.2
rentdeduct=`echo $rent \* $salary | bc`
grossalary=`echo $salary - \($Deduction + $rentdeduct\) | bc`
echo $grossalary

I am getting an o/p as 2400, i.e. when i enter the salary as 6000. now the script doesnt seem to calculate rentdeduct and grossalary.

thanks
chaitanya

Last edited by DukeNuke2; 08-04-2009 at 03:31 PM.. Reason: added code tags
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

need help with bash shell script

Hi guys! I have just started with shell programming!! I am having pronblem with variable subsitutuion. when i do egrep "*" marks this will give me the pattern match. but how can i catch the output of that result in a variable. if i say result = egrep "*" marks it gives me syntax... (2 Replies)
Discussion started by: vmtailor
2 Replies

2. UNIX for Dummies Questions & Answers

Bash shell script

Hi Guys, I am trying to alter a script for my company. I need the start of it to go something like this. User is asked to input 8 numbers 8 numbers are written to a txt file ***** ***** ***** txt file is read ***** ***** The text file gets read in between other files represented by... (2 Replies)
Discussion started by: outthere_3
2 Replies

3. Shell Programming and Scripting

Bash shell script- help

I need to invoke a program on remote server using ssh in a shell script. In addition i would like to capture date/time and if there is any errors , then script should write to log file. can someone please help me out? (1 Reply)
Discussion started by: sam101
1 Replies

4. Shell Programming and Scripting

Help with bash shell script

Hi, I have a file in which records contains non ascii characters. The records are comma delimited and quoted. The non ascii characters are found in a particular column. Example records "YY","AK000021","Ã","IO","PP" "Y1","AK000022","Ã","PO","PP" "Y2","AK000022","Ã","PO","PP" I need to... (2 Replies)
Discussion started by: akshu.agni
2 Replies

5. Shell Programming and Scripting

Bash Shell Script

HELP!My program ends after entering one choice---need help making it take multiple inputs,instead of terminating after displaying just one #!/bin/bash# Crude address databaseclear # Clear the screen.echo " Contact List"echo " ------- ----"echo "Choose one of the following... (6 Replies)
Discussion started by: help123
6 Replies

6. Shell Programming and Scripting

Bash shell script to check if script itself is running

hi guys we've had nagios spewing false alarm (for the umpteenth time) and finally the customer had enough so they're starting to question nagios. we had the check interval increased from 5 minutes to 2 minutes, but that's just temporary solution. I'm thinking of implementing a script on the... (8 Replies)
Discussion started by: hedkandi
8 Replies

7. Shell Programming and Scripting

Need help with bash shell script

I need to create digit day script that takes a single numeric argument and then it should print out the day of the week using the number modulo 7 formula e.g: 0 - Sunday 6- Saturday 131 - Friday I am fairly new to unix so I don't know how to use the number modulo 7 formula. Does the script need... (3 Replies)
Discussion started by: lukefrost96
3 Replies

8. Shell Programming and Scripting

Help with Bash shell script

Hi All, I have a script which as below #!/bin/bash for i in `cat servers` do ssh uname@$i "df -t xfs --total | grep total"; done > out.txtOutput as below -------------- total 140583991104 118622795524 21961195580 85% - total 140583991104 112888595524 27695395580 ... (4 Replies)
Discussion started by: npk
4 Replies

9. Shell Programming and Scripting

Different behavior between bash shell and bash script for cmd

So I'm trying to pass certain json elements as env vars and use them later on in a script. Sample json: JSON='{ "Element1": "file-123456", "Element2": "Name, of, company written in, a very weird way", "Element3": "path/to/some/file.txt", }' (part of the) script: for s... (5 Replies)
Discussion started by: da1
5 Replies

10. UNIX for Beginners Questions & Answers

In Bash shell - the ps -ef shows only the /bin/bash but the script name is not displayed

In Bash shell - the ps -ef shows only the /bin/bash but the script name is not displayed ? Is there any way to get the script names for the process command ? --- Post updated at 08:39 AM --- in KSH (Korn Shell), my command output shows the script names but when run in the Bash Shell... (3 Replies)
Discussion started by: i4ismail
3 Replies
LIST(3) 								 1								   LIST(3)

list - Assign variables as if they were an array

SYNOPSIS
array list (mixed $var1, [mixed $...]) DESCRIPTION
Like array(3), this is not really a function, but a language construct. list(3) is used to assign a list of variables in one operation. PARAMETERS
o $var1 - A variable. RETURN VALUES
Returns the assigned array. EXAMPLES
Example #1 list(3) examples <?php $info = array('coffee', 'brown', 'caffeine'); // Listing all the variables list($drink, $color, $power) = $info; echo "$drink is $color and $power makes it special. "; // Listing some of them list($drink, , $power) = $info; echo "$drink has $power. "; // Or let's skip to only the third one list( , , $power) = $info; echo "I need $power! "; // list() doesn't work with strings list($bar) = "abcde"; var_dump($bar); // NULL ?> Example #2 An example use of list(3) <table> <tr> <th>Employee name</th> <th>Salary</th> </tr> <?php $result = $pdo->query("SELECT id, name, salary FROM employees"); while (list($id, $name, $salary) = $result->fetch(PDO::FETCH_NUM)) { echo " <tr> " . " <td><a href="info.php?id=$id">$name</a></td> " . " <td>$salary</td> " . " </tr> "; } ?> </table> Example #3 Using nested list(3) <?php list($a, list($b, $c)) = array(1, array(2, 3)); var_dump($a, $b, $c); ?> int(1) int(2) int(3) Example #4 Using list(3) with array indices <?php $info = array('coffee', 'brown', 'caffeine'); list($a[0], $a[1], $a[2]) = $info; var_dump($a); ?> Gives the following output (note the order of the elements compared in which order they were written in the list(3) syntax): array(3) { [2]=> string(8) "caffeine" [1]=> string(5) "brown" [0]=> string(6) "coffee" } NOTES
Warning list(3) assigns the values starting with the right-most parameter. If you are using plain variables, you don't have to worry about this. But if you are using arrays with indices you usually expect the order of the indices in the array the same you wrote in the list(3) from left to right; which it isn't. It's assigned in the reverse order. Warning Modification of the array during list(3) execution (e.g. using list($a, $b) = $b) results in undefined behavior. Note list(3) only works on numerical arrays and assumes the numerical indices start at 0. SEE ALSO
each(3), array(3), extract(3). PHP Documentation Group LIST(3)
All times are GMT -4. The time now is 03:24 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy