unix/bash exercises

Specifications

  • Artifact is a GitHub repo.
  • 20 exercises are completed from the “Learn Enough Command Line to be Dangerous” book.
  • Solution code for each exercise is included in its own bash file (*.sh).
  • Solution code for exercises are stored in a command-line/ directory of your artifact repo.
  • Solution code for each exercise includes a comment with the prompt text for the exercise.
  • 20 activities are completed from the Bash Scripting tutorials.
  • Solution code for each activity is included in its own bash file (*.sh). Tip: for the bash-scripting tutorials, check your solutions by executing your bash (.sh) files (type their name in the terminal), instead of writing code directly in the terminal.
  • Solution code for activities are stored in a bash-scripting/ directory of your artifact repo.
  • Solution code for each activity includes a comment with the prompt text for the activity.
  • Cheat sheet of your favorite useful commands and a brief explanation of what they do is included in the artifact as a cheat-sheet.md file.
  • The artifact produced is properly licensed, preferably with the MIT license.

Stretch

  • All exercises are completed from the “Learn Enough Command Line to be Dangerous” book and solution code is included as files under a command-line/ directory.
  • All activities are completed from the Bash Scripting tutorials and solution code is included as files under a bash-scripting/ directory.
  • 10 activities are completed from the Linux tutorials and solution code is included as files under a linux/ directory.*

*Note: there will likely be overlap between this tutorial and the Hartl book. Choose only activities that cover new material so you don’t do redundant work.

Quality Rubric

Clean and clear code

  • Code is well formatted and easily readable [50 points]

  • Code includes comments where appropriate to explain and give context [50 points]

  • Good project management

  • Commit messages are concise and descriptive. [25 points]

  • All features are added via pull requests. [25 points]

  • Every pull request has a description summarizing the changes made. [25 points]

  • Every pull request has been reviewed by at least one other person. [25 points]

Resources

  • Michael Hartl’s book “Learn Enough Command Line to be Dangerous”
  • Ryan Chadwick’s Tutorial on Bash Scripting
  • Ryan Chadwick’s Tutorial on Linux
  • University of Hawaii article on Advanced Unix
  • Codecademy’s Command Line course