The expr command in Linux evaluates a given expression for you and displays the output. It also lets you perform certain string operations such as finding length, substring and more. In this tutorial, we will learn how to perform these operations. First, we will look at the arithmetic operations and then move on to the string operations.
Let’s get started!
Performing Arithmetic Operations with expr
You can perform basic arithmetic operations such as addition, subtraction, multiplication and division with the expr command. Let’s take a look at these operations one by one.
1. Addition Operations
You can perform addition with the expr command using :
expr 8 + 4
Output :
12
2. Subtraction Operations
You can perform subtraction with the expr command using :
expr 8 - 4
Output :
4
3. Multiplication Operations
You can perform multiplication with the expr command using :
expr 8 \* 4
Note : We use the backslash to escape the multiplication character.
Output :
32
4. Division Operations
You can perform division with the expr command using :
expr 8 / 4
Output :
2
Using expr command with variables
You can also use expr with variables. That means you can also use expr in your shell scripts. Let’s see an example.
x= 15
y=`expr $x + 10`
echo $y
Output :
25
Performing String Operations with expr command
Now let’s learn about the string operations that you can perform using the expr command. You can perform the following operations with the expr:
1. Find the length of a string
To find the length of a string use:
expr length [string]
Let’s see an example :
expr length Hello
Output :
5
2. Extract a substring
You can also use expr to take out a substring from a string. The syntax for that is :
expr substr [string] [pos] [length]
Where [string] is the parent string, [pos] is the starting position for the substring and [length] is the length of the substring to be extracted.
Let’s see an example :
expr substr LinuxForDevices 6 3
Output :
For
3. Find starting index of a pattern
You can also use expr to get the starting index of a pattern in the string (pattern is a substring). The syntax for that is:
expr index [string] [pattern]
Let’s see an example :
expr index LinuxForDevices ux
Output :
4
4. Compare two strings
You can use expr to compare two strings as well. Comparing using expr gives the number of matching characters in the two strings. The syntax for comparing two strings is :
expr [string1] : [string2]
Let’s see an example:
expr bookmark : book
Output :
4
Conclusion
This tutorial was about expr in Linux. We learned how this command is used for evaluating arithmetic expressions and performing string operations. To learn more about the expr command read its man page. Alternatively, use the man command for the same.