Sponsored Content
Top Forums Shell Programming and Scripting Assigning bc output to a variable Post 302871887 by apmcd47 on Thursday 7th of November 2013 07:19:47 AM
Old 11-07-2013
Quote:
Originally Posted by pina
I'm converting decimal to integer with bc, and I'd like to assign the integer output from bc to a variable 'val'.

E.g. In the code below: If b is 5000.000, lines 6 and 8 will output:
5000
(5000.000+0.5)/1 | bc

I'd like val to take the value 5000 though, rather than 5000.000

Does someone have any idea how to do that?


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
 

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
SCC(4)							   BSD Kernel Interfaces Manual 						    SCC(4)

NAME
scc -- Zilog 8530 Serial Communications Controller interface SYNOPSIS
scc* at ioasic? offset ? DESCRIPTION
The scc driver provides support for the Zilog 8530 Serial Communications Controller (SCC) via the IOASIC found on DECstation 5000 models in the /100, /20, and /240 series (supported by NetBSD/pmax). Each SCC device has two serial ports. The DECstation 5000 model 20 provides one SCC device. Other models provide two, but one port of each device is dedicated to mouse and keyboard input, respectively. Input and output for each line may set to one of following baud rates: 50, 75, 110, 134.5, 150, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, or 57600. Speeds up to 230400 are supported by the chip and the motherboard, but speeds higher than 57600 do not work reliably without an external clock signal. FILES
/dev/ttya /dev/ttyb /dev/ttyc /dev/ttyd The mapping from units to serial-hardware outlets is idiosyncratic. The even ports are wired serial connectors and the odd-numbered ports are reserved for mouse and keyboard. On machines with one port like Personal DECstations, the single device is ttya. On the 5000/1xx and 5000/2xx, the first serial port (default serial console) is ttyc and the second port is ttya. SEE ALSO
intro(4), ioasic(4), ttys(5), MAKEDEV(8) HISTORY
The scc driver first appeared in 4.4BSD. The scc driver was also used for the IOASIC SCC found in DEC Alpha model 3000 TurboCHANNEL based systems; NetBSD/alpha has since been con- verted to use the machine-independent zstty(4). BUGS
The IOASIC provides internal DMA channels that can be programmed to transfer up to 4096 bytes of data into, or out, of an SCC without further software intervention. This feature of the IOASIC is not yet supported. The mapping from device-special files (major and minor number) to chip and port is arguably backwards. ULTRIX tries to hide the hardware mapping, but NetBSD does not. Users wanting to use ULTRIX compatible tty names /dev/tty0 and /dev/tty1 for the scc comm-port lines should make links or device-special files which match their hardware setup. BSD
April 24, 2003 BSD
All times are GMT -4. The time now is 05:33 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy