beanz Magazine

Bash Scripting with CLI

JD Lasica on Flickr

Add more tools to your command line arsenal, including running mini-scripts and making backup copies.

So far in this series we’ve spent some time talking about how to use the command line to do things like how to chain commands together and do basic file system tasks. Now we’re ready to talk about writing programs for the command line!

If you have a Mac or a Raspberry Pi, look for the Terminal application. If you’re on Windows 10, you’ll want to follow the steps in the following article on how to set up a terminal with bash on Windows!

Now, this isn’t the old-school command line for Windows. That’s a program called Powershell. Powershell is a bit different than anything else, so we’ll cover it separately in the future.

First, let’s throw out a couple of definitions that are relevant. The program that you’re interacting with when you’re on the command line is a shell. The shell is what interprets the commands you type and turns them into commands the operating system understands.

There’s quite a few shells that exist but the one that is used by default on Linux and OSX is bash. So bash stands for “Bourne Again SHell”, and it’s named this because it’s a revamp of an even older shell program called the “Bourne shell” that dates back to the 1970s. By comparison, bash is a spry 29 years old.

A cool thing about shells like bash is that they have their own programming language built in. For example, here’s a tiny little script to play entire directories of music from the Raspberry Pi I have hooked up to some speakers:

#!/bin/bash
dirName=$1
for song in "$dirName"/*.mp3
do
	omxplayer "$song"
done

Become a subscriber and get access to the rest of this article. Plus all our magazine articles.

Stories also include numerous links to help parents, kids, and teachers learn more. Get access today at just $15 per year for online magazine only or $29.99/year for print + online ($35/year outside US)!

Subscribe Today!

Also In The September 2018 Issue

Logic puzzles help develop reasoning skills useful for programming, computer science, and anything you might do.

Find perfect and fun gifts for your loved ones that teach STEAM concepts and skills.

From light-up bow-ties to conductive thread, you’ll be the life of the party with this STEAM-inspired gear.

A free online test service reveals how much personal data your web browser is giving away.

Add more tools to your command line arsenal, including running mini-scripts and making backup copies.

Use switches to take your robotic creations to the next level.

An old classic with a electronic twist, featuring JavaScript and micro:bit.

Create the American flag in SketchUp using this detailed tutorial.

From lasers to supernovas, Berboucha is making science communication a priority.

Code can always be improved. Check out these tips to make you the best programmer you can be!

It’s a programming language unlike any you’ve seen before. Check out this symbolic system designed for mathematical calculations.

New, improved, faster, and sleeker - it’s Scratch 3, your new favourite block language!

Learn about the brilliant algorithm behind all of your GPS devices.

It’s free, comprehensive, and available on-the-go. This cool app helps you master Python faster than ever before.

Open up whole new worlds to explore through these interesting, diverse add-ons.

Links from the bottom of all the October 2018 articles, collected in one place for you to print, share, or bookmark.

Interesting stories about computer science, software programming, and technology for October 2018.