Sponsored Content
Top Forums Shell Programming and Scripting Assigning bc output to a variable Post 302871891 by Akshay Hegde on Thursday 7th of November 2013 07:21:57 AM
Old 11-07-2013
Quote:
Originally Posted by apmcd47
Try:
Code:
#! /bin/bash

while read b
do

    echo "($b+0.5)/1" | bc        # line 6 - works
    val=$(($b+0.5)/1 | bc)        # line 7 - should now work
    echo $val                          # line 8

done < infile

Basically $(...) invokes command substitution such that the output of command/subshell can be assigned to a variable.

Andrew
@ apmcd47 your solution gives error

if ksh93 then this will work
Code:
val=$((b+0.5/1))

Try this for bash

Code:
$ b=5000
$ echo "($b+0.5)/1" | bc 
5000
$
$ variable=$(echo "($b+0.5)/1" | bc )
$ echo $variable
5000

if floating point is needed then try
Code:
$ var=$(echo "scale=1;$b+0.5/1" | bc) 
$ echo $var
5000.5


Last edited by Akshay Hegde; 11-07-2013 at 08:38 AM..
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Assigning output of command to a variable

Hi, I'm trying to assign the output of a command to a variable and then concat it with another string, however, it keeps overwriting the original string instead of adding on to the end of the string. Contents of test.txt --> This is a test var1="`head -n 1 test.txt`" echo $var1 (This is a... (5 Replies)
Discussion started by: oma04
5 Replies

2. Shell Programming and Scripting

assigning command output to a shell variable

I have the sql file cde.sql with the below contents: abcdefghij abcwhendefothers sdfghj when no one else when others wwhen%others exception when others Now I want to search for the strings containing when others together and ceck whether that does not occur more than once in the... (2 Replies)
Discussion started by: kprattip
2 Replies

3. Shell Programming and Scripting

assigning nawk output to shell variable

Hello friends, I doing the follwing script , but found problem to store it to a shell variable. #! /bin/sh for temp in `find ./dat/vector/ -name '*.file'` do echo $temp nawk -v temp=$temp 'BEGIN{ split(temp, a,"\/"); print a}' done output: ./dat/vector/drf_all_002.file... (6 Replies)
Discussion started by: user_prady
6 Replies

4. Shell Programming and Scripting

Assigning output of command to a variable in shell

hi, I want to assign find command result into some temporary variable: jarPath= find /opt/lotus/notes/ -name $jarFile cho "the jar path $jarPath" where jarPath is temporary variable. Can anybody help on this. Thanks in advance ----Sankar (6 Replies)
Discussion started by: sankar reddy
6 Replies

5. Shell Programming and Scripting

Assigning output to a variable

I am new to unix shell scripting. I was trying to convert each lines in a file to upper case. I know how to convert the whole file. But here i have to do line by line. I am getting it in the below mentioned script #!/bin/bash #converting lower to upper in a file #tr "" "" <file1... (3 Replies)
Discussion started by: jpmena
3 Replies

6. Shell Programming and Scripting

Assigning output of a command to variable

When I run time -p <command>, it outputs: real X.XX user X.XX sys X.XXwhere X.XX is seconds. How I can take just that first number output, the seconds of real time, and assign that to a variable? (9 Replies)
Discussion started by: jeriryan87
9 Replies

7. Shell Programming and Scripting

assigning SED output to a variable = trouble!

i'm on a Mac running BSD unix. i have a script in which i ask the user to input the name of a mounted volume. i then call SED to substitute backslashes and spaces in place of the spaces. that looks like this: echo "Enter the name of the volume" read Volume echo "You've chosen \"$Volume\""... (7 Replies)
Discussion started by: hungryd
7 Replies

8. Shell Programming and Scripting

Piping and assigning output to a variable in Perl

Hi All, I am trying to convert the below Csh code into Perl. But i have the following error. Can any expert help ? Error: ls: *tac: No such file or directory Csh set $ST_file = `ls -rt *$testid*st*|tail -1`; Perl my $ST_file = `ls -rt *$testid*st*|tail -1`; (10 Replies)
Discussion started by: Raynon
10 Replies

9. Shell Programming and Scripting

Assigning output from awk to variable

I have a script whose contents are as below result= awk 's=100 END {print s }' echo "The result is" $result The desired output is The result is 100 My script is running without exiting and i am also not getting the desired output. Please help (5 Replies)
Discussion started by: bk_12345
5 Replies

10. Shell Programming and Scripting

Expect - assigning UNIX command output to a variable

Hi, I'm writing a script that connects through ssh (using "expect") and then is supposed to find whether a process on that remote machine is running or not. Here's my code (user, host and password are obviously replaced with real values in actual script): #!/usr/bin/expect set timeout 1... (3 Replies)
Discussion started by: oseri
3 Replies
CRMGR(1)						      Quick Database Manager							  CRMGR(1)

NAME
crmgr - administration utility for QDBM Curia SYNOPSIS
crmgr create [-s] [-bnum num ] [-dnum num] name crmgr put [-kx|-ki] [-vx|-vi|-vf] [-keep|-cat] [-lob] [-na] name key val crmgr out [-kx|-ki] [-lob] name key crmgr get [-nl] [-kx|-ki] [-start num] [-max num] [-ox] [-lob] [-n] name key crmgr list [-nl] [-k|-v] [-ox] name crmgr optimize [-bnum num] [-na] name crmgr inform [-nl] name crmgr remove name crmgr repair name crmgr exportdb name dir crmgr importdb name dir crmgr snaffle [-kx|-ki] [-ox] [-n] name key crmgr version DESCRIPTION
This manual page documents briefly the crmgr commands. crmgr is a utility for debugging Curia and its applications. It features editing and checking of a database. It can be used for the data- base applications with shell scripts. This command is used in the above format. name specifies a database name. key specifies the key of a record. val specifies the value of a record. OPTIONS
A summary of options is included below. For a complete description, see the file:///usr/share/doc/qdbm-doc/spex.html#curiacli. -s make the file sparse. -bnum num specify the number of the elements of the bucket array. -dnum num specify the number of division of the database. -kx treat key as a binary expression of hexadecimal notation. -ki treat key as an integer expression of decimal notation. -vx treat val as a binary expression of hexadecimal notation. -vi treat val as an integer expression of decimal notation. -vf read the value from a file specified with val. -keep specify the storing mode for `CR_DKEEP'. -cat specify the storing mode for `CR_DCAT'. -na do not set alignment. -nl open the database without file locking. -start specify the beginning offset of a value to fetch. -max specify the max size of a value to fetch. -ox treat the output as a binary expression of hexadecimal notation. -lob handle large objects. -n do not output the tailing newline. -k output keys only. -v output values only. SEE ALSO
qdbm(3), crtsv(1), curia(3), cropen(3). AUTHOR
QDBM was written by Mikio Hirabayashi <mikio@fallabs.com>. This manual page was written by Fumitoshi UKAI <ukai@debian.or.jp>, for the Debian project (but may be used by others). Man Page 2005-05-23 CRMGR(1)
All times are GMT -4. The time now is 09:21 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy