:08 AM

bc Command Examples in Unix / Linux tutorials 1 of 6 Home Data Warehouse Informatica Informatica Scenarios http://www.folkstalk.com/2012/09/bc-c...
13 downloads 0 Views 557KB Size
bc Command Examples in Unix / Linux tutorials

1 of 6

Home

Data Warehouse

Informatica

Informatica Scenarios

http://www.folkstalk.com/2012/09/bc-command-examples...

Oracle

Unix

BC COMMAND EXAMPLES IN UNIX / LINUX TUTORIALS Arithmetic operations are the most common in any kind of programming language. Unix or linux operating system provides the bc command and expr command for doing arithmetic calculations. You can use these commands in bash or shell script also for evaluating arithmetic expressions.

Hadoop

Subscribe

Search... Search

Here we will see only about the bc command. The bc command evaluates expressions similar to the c programming language. The bc command supports the following features. Arithmetic operators Increment and decrement operators Assignment operators Comparision or Relational Operators Logical or Boolean operators Math Functions Conditional statements Iterative statements Functions Arithmetic operator Examples: The following example shows how to use various arithmetic operators. The examples are pretty straight forward. So, I will provide explanation only when required. In most of the examples the echo statment is used to provide the expressions to the bc command.

UNIX RECENT POSTS Execute a Command at a given Time in Unix Connect to Postgres Database in Unix Shell Script Vim / vi Editor Commands for Copy / Paste and Delete Check if a Directory Exists in Shell Script - Unix

1. Finding Sum of Two expressions

Know the User Shell - Unix / Linux More Unix Tutorials

> echo "2+5" | bc 7

2. Difference of Two numbers

> echo "10-4" | bc 6

3. Multiplying two numbers

> echo "3*8" | bc 24

INFORMATICA RECENT POSTS Transformation Scope in Informatica With Examples Database SQL Minus Set Operator in Informatica

4. Dividing two numbers

Starting and Stopping of Informatica Services - Unix Informatica Scenarios - Real Time Scenarios

When you divide two numbers, the bc command Ignores the decimal part and returns only the integral part as the output. See the below examples

Get Previous Row Value in Informatica More Informatica Articles

08/21/2014 07:08 AM

bc Command Examples in Unix / Linux tutorials

2 of 6

http://www.folkstalk.com/2012/09/bc-command-examples... ORACLE RECENT POSTS Oracle Query to Repeat a Number n Times

> echo "2/3" | bc 0 > echo "5/4" | bc 1

Cursor For Loop Example in Oracle PlSql Max of Product N consecutive Digits - Oracle Sql Query SQL Query to Group / Aggregate N Consecutive Rows Oracle Trigger After Insert Example & Create

POPULAR POSTS

Use the scale function to specify the number of decimal digits that the bc command should return.

Top Examples of Awk Command in Unix Sed Command in Unix and Linux Examples

> echo "scale=2;2/3" | bc .66

Cut Command in Unix ( Linux) Examples Informatica Scenario Based Interview Questions with Answers - Part 1 SQL Queries Interview Questions - Oracle Part 1

5. Finding the remainder using modulus operator Unix Sed Command to Delete Lines in File - 15 Examples

> echo "6%4" | bc 2

Date Functions in Hive String Functions in Hive Informatica Scenario Based Questions - Part 2

6. Using exponent operator Download Informatica PowerCenter Version 9.1 Tutorials (PDF Documents)

> echo "10^2" | bc 100

Follow me on Google+

Here the expression is evaluated as 10 to the power of 2. Assignment Operator Examples: Assignment operators are used to assign a value to the variable. The following example shows how to use the assignment operators:

Assigns 10 to the variable and prints the value on the terminal. > echo "var=10;var" | bc Increment the value of the variable by 5 > echo "var=10; var+=5;var | bc 15

The lists of assignment operators supported are: var = value : Assign the value to the variable var += value : similar to var = var + value var -= value : similar to var = var - value var *= value : similar to var = var * value var /= value : similar to var = var / value var ^= value : similar to var = var ^ value var %= value : similar to var = var % value Increment Operator Examples: There are two kinds of increment operators. They are pre increment and post increment operators. ++var : Pre increment operator. The variable is incremented first and then the result of the variable is used.

08/21/2014 07:08 AM

bc Command Examples in Unix / Linux tutorials

3 of 6

http://www.folkstalk.com/2012/09/bc-command-examples...

var++ : Post increment operator. The result of the variable is used first and then the variable is incremented. > echo "var=5;++var" | bc 6 > echo "var=5;var++" | bc 5

Here, in the second example the value of var is printed first and then it is incremented. See the below example, to see the complete incremental effect.

> echo "var=5;var++;var" | bc 5 6

Decrement Operator Examples: Similar to the increment operators, there are two types of decrement operators. --var : Pre decrement operator. The variable is decremented first and then the result of the variable is used. var-- : Post decrement operator. The result of the variable is used first and then the variable is decremented. > echo "var=5;--var"| bc 4 > echo "var=5;var--"| bc 5

Relational Operators Examples: Relational operators are used to compare two numbers. If the comparison is true, then it returns 1. Otherwise (false), it returns 0. The relational operators are mostly used in conditional statements like if. The list of relational operators supported in bc command are shown below: expr1 < expr2 : Result is 1 if expr1 is strictly less than expr2. expr1 expr2 : Result is 1 if expr1 is strictly greater than expr2. expr1 >= expr2 : Result is 1 if expr1 is greater than or equal to expr2. expr1 == expr2 : Result is 1 if expr1 is equal to expr2. expr1 != expr2 : Result is 1 if expr1 is not equal to expr2.

> echo "10 > 5" | bc 1 > echo "1 == 2" | bc 0

Logical Operator Examples: Logical operators are also mostly used in conditional statements. The result of the logical operators is either 1 (True) or 0 (false) ! expr : Result is 1 if expr is 0. expr && expr : Result is 1 if both expressions are non-zero. expr || expr : Result is 1 if either expression is non-zero.

08/21/2014 07:08 AM

bc Command Examples in Unix / Linux tutorials

4 of 6

http://www.folkstalk.com/2012/09/bc-command-examples...

> echo "4 && 10" | bc 1 > echo "0 || 0" | bc 0

Math Functions: The built-in math functions supported are: s (x) : The sine of x, x is in radians. c (x) : The cosine of x, x is in radians. a (x) : The arctangent of x, arctangent returns radians. l (x) : The natural logarithm of x. e (x) : The exponential function of raising e to the value x. j (n,x): The bessel function of integer order n of x. sqrt(x): Square root of the number x. In addition to the math functions, the following functions are also supported. length(x) : returns the number of digits in x read() : Reads the number from the standard input. Conditional Statement Examples: Conditional statements are used to take decisions and execute statements based on these decisions. Bc command supports the if condition. The syntax of if statement is

if(condition) { statements} else {statements}

The following example shows show to use the if condition

> echo 'if(1 == 2) print "true" else print "false"' | bc false

Iterative Statements: Bc command supports the for and while loop for doing iterations. The syntax of for and while loop are shown below:

for (assignment; condition; increment) { statements } while (condition) { statements }

The following examples prints numbers from 1 to 10 using the for and while loops

> echo "for(i=1;i