Site Map - skip to main content

Hacker Public Radio

Your ideas, projects, opinions - podcasted.

New episodes every weekday Monday through Friday.
This page was generated by The HPR Robot at

hpr2639 :: Some ancillary Bash tips - 9

Making decisions in Bash (part 1)

<< First, < Previous, , Latest >>

Thumbnail of Dave Morriss
Hosted by Dave Morriss on 2018-09-13 is flagged as Explicit and is released under a CC-BY-SA license.
Bash, test, true, false. 3.
The show is available on the Internet Archive at:

Listen in ogg, spx, or mp3 format. Play now:

Duration: 00:21:45

Bash Scripting.

This is an open series in which Hacker Public Radio Listeners can share their Bash scripting knowledge and experience with the community. General programming topics and Bash commands are explored along with some tutorials for the complete novice.

Some ancillary Bash tips - 9

Making decisions in Bash

This is my ninth contribution to the Bash Scripting series under the heading of Bash Tips. The previous episodes are listed below in the Links section.

It seems to me that it would be worthwhile looking at how Bash can be used to make decisions, such as how many times a loop should cycle (looping constructs) or to choose between multiple choices (conditional constructs). Of course we need to look at some of the expressions used in conjunction with the commands that do these tasks – the tests themselves – and we’ll do this in this episode.

This is a complex area which I had some trouble with when I first started using Bash, and there is a lot to say about it all. I have prepared a group of HPR shows about this subject, in order to do it justice, and this is the first of the group.

Long notes

I have provided detailed notes as usual for this episode, and these can be viewed here.


Subscribe to the comments RSS feed.

Comment #1 posted on 2018-09-14 05:22:37 by Ken


Always knew I needed spaces now I know why.

The evaluate zero thing seems strange.

Note to self: stop using wc -l to count grep output.

Comment #2 posted on 2018-09-21 07:28:12 by johanv

Really interesting

I hadn't listened to HPR for a long time, but a couple of days ago I had some spare time, and I decided to listen to this episode. I liked it a lot, and today I am a little more aware about what I am actually doing while writing if statements with those square brackets in bash, and checking return codes.

Thanks for the interesting show!

Comment #3 posted on 2018-09-21 15:56:54 by Dave Morriss

Thanks for the feedback

Ken: Yes the arithmetic stuff evaluating to true/false is a bit counter-intuitive I think. Yes, grep is quite a powerful tool for use in scripts.

johanv: Glad you found the show useful. I'm trying to explain things that I never fully understood before, and to share what I have found as I do so.

Leave Comment

Note to Verbose Commenters
If you can't fit everything you want to say in the comment below then you really should record a response show instead.

Note to Spammers
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to record a show about yourself, or your industry, or any other topic we may find interesting. We also check shows for spam :).

Provide feedback
Your Name/Handle:
Anti Spam Question: What does the letter P in HPR stand for?
Are you a spammer?
What is the HOST_ID for the host of this show?
What does HPR mean to you?