04. String Tests =, !=

String tests can be useful for checking user's input.

Checking for string equality

To check if two strings are equal or not, simply use the = or != operators.

$ [ 'hi' = 'hi' ]; echo $?
0
$ [ 'hello' = 'hi' ]; echo $?
1

Checking if argument is empty or not

Two unary operators are used to check if a string is empty or not.

-z
Argument is empty
-n
Argument is not empty
$ [ -z "" ]; echo $?
0
$ [ -n "" ]; echo $?
1

Example script

Here's a simple script that reads an input, and depending on the string put in, returns a specific response.

#!/bin/bash
 
printf 'Please enter a word: '
 
read input
 
if [ $input = 'hi' ]; then
  printf 'Hi to you too!'
else
  printf 'You input %s.\n' $input
fi

We'll go over if-then-else statements soon, but notice how we can use tests and expressions such as these to control logic in our scripts.

Aching back from coding all day?

Prism Glasses

Aching back from coding all day? Try Back Problems

Ever feel achy from sitting crunched up on your computer table? Try lying down with these optical glasses that allow you to work on your laptop while lying flat on your back. This is the perfect solution with those with limited mobility or those who wish to prevent neck cramps and back strains.

$ Check price
4.454.45Amazon 4 logo(128+ reviews)

More Back Problems resources

Take your Linux skills to the next level!

Linux for Beginners

Take your Linux skills to the next level! Try Linux & UNIX

Linux for Beginners doesn't make any assumptions about your background or knowledge of Linux. You need no prior knowledge to benefit from this book. You will be guided step by step using a logical and systematic approach. As new concepts, commands, or jargon are encountered they are explained in plain language, making it easy for anyone to understand.

$ Check price
24.9924.99Amazon 4.5 logo(101+ reviews)

More Linux & UNIX resources

Ad