A resource for self-guided learning
  • Home
  • Getting Started
  • Software Installs
  • Learning Resource List
  • Domain-Specific Series

Series Introduction

  • The Unix Shell
    • Series Introduction
    • Installation and Resources
    • Introducing the Shell
    • The File System
    • Patterns, Filters, and Pipes
    • Variables and Loops
    • Bash Scripting

  • R Data Analysis and Visualization
    • Series Introduction
    • Installation and Resources
    • Introduction to R and RStudio
    • Starting with data
    • Manipulating, analyzing, and exporting data with tidyverse
    • Data visualization with ggplot2

On this page

  • Goals and Topics
  • Code of Conduct
  • Schedule
  • Citations

Series Introduction

The Unix Shell

Learn the basics of the Unix Shell
Author

Christopher Sifuentes

Goals and Topics

This training series is intended for absolute beginners and focused on the basic usage of the Bash Shell. Concepts introduced in these sessions are foundational to the application of computational approaches and will enable more powerful and reproducible research.

By the end of the series, you should be able to

  • describe the Unix file system structure
  • navigate the Unix file system from the command line
  • create, view, and manipulate files and directories
  • chain bash shell commands together
  • create a basic Bash shell script to automate tasks

Code of Conduct

We are dedicated to supporting a safe, productive, and harassment-free environment for everyone. Harassment includes offensive comments and behavior related to gender, gender identity and expression, age, sexual orientation, disability, physical appearance, body size, race, ethnicity, religion, technology choices, sexual images, deliberate intimidation, stalking, or inappropriate or unwelcome sexual attention. All communication should be appropriate for a professional audience including people of many different backgrounds.

In general:

  • Be kind to others.
  • Be open, supportive, and constructive.
  • Do not insult or put down others.
  • Behave professionally.
  • Harassment and sexist, racist, or exclusionary jokes are not appropriate and will not be tolerated.

Thank you for helping make this a welcoming, friendly community for all.

Schedule

Session Lesson Slide Version
Session 1
  • Introducing the Shell
  • The File System
  • Introducing the Shell
  • The File System
Session 2
  • Patterns, Filters, and Pipes
  • Patterns, Filters, and Pipes
Session 3
  • Variables and Loops
  • Variables and Loops
Session 4
  • Bash Scripting
  • Bash Scripting

Citations

  1. Gabriel A. Devenyi (Ed.), Gerard Capes (Ed.), Colin Morris (Ed.), Will Pitchers (Ed.), Greg Wilson, Gerard Capes, Gabriel A. Devenyi, Christina Koch, Raniere Silva, Ashwin Srinath, … Vikram Chhatre. (2019, July). swcarpentry/shell-novice: Software Carpentry: the UNIX shell, June 2019 (Version v2019.06.1). Zenodo. http://doi.org/10.5281/zenodo.3266823
  2. Computational Foundations Workshop. (n.d.). Retrieved December 7, 2022, from https://umich-brcf-bioinf.github.io/2022-10-31-umich-computational-foundations/html/index.html
  3. Learn regular expressions - lesson 1: An introduction, and the abcs. RegexOne. (n.d.). Retrieved April 3, 2023, from https://regexone.com/
  4. Nagarajan, V. (2018). Command line fundamentals: Learn to use the unix command-line tools and Bash Shell scripting. Packt Publishing.
  5. Chadwick, R. (n.d.). Bash scripting tutorial - 1. what is a bash script? A collection of Technology Tutorials. Retrieved April 4, 2023, from <https://ryanstutorials.net/bash-scripting-tutorial/bash-script.php >

Note: This series has been adapted from the Carpentries course entitles “The Unix Shell” [1] as well as the “Computational Foundations Workshop” [2], created by the University of Michigan Bioinformatics Core Workshop Team and inspired by or drawn on information from Regexone practice questions [3] as well as the very complete “Command line fundamentals” book by Vivek Nagaragan [4], and the “Bash scripting tutorial” developed by Ryan Chadwick [5].

Installation and Resources
Cookie Preferences