HPC/Linux Guides: Difference between revisions

From CNM Wiki
< HPC
Jump to navigation Jump to search
mNo edit summary
Line 35: Line 35:
; <code>man bash</code>:
; <code>man bash</code>:
: The Bash manual page is the definitive resource on capabilities and syntax. Covers all details of bash precisely and concisely.
: The Bash manual page is the definitive resource on capabilities and syntax. Covers all details of bash precisely and concisely.
: ''Version note:'' The man command as shown gives the version relevant for your current system. See http://bashcookbook.com/bashinfo/#bash for other versions. Simple scripting concepts are applicable for all versions, but more recent ones add capabilities to make scripting more flexible, such as regular expression matching, array variables, and arithmetic loops. --[[User:Stern|stern]]
: ''Version note:'' The man command as shown gives the version relevant for your current system. See http://bashcookbook.com/bashinfo/#bash for other versions. Simple scripting concepts are applicable to all versions, but with each version capabilities were added to make scripting more flexible, such as array variables, arithmetic loops, and regular expression matching. --[[User:Stern|stern]]
; [http://www.gnu.org/software/bash/manual/ Bash Reference Manual]:
; [http://www.gnu.org/software/bash/manual/ Bash Reference Manual]:
: "A brief introduction to features found in Bash." For a definitive reference on shell behavior please review the Bash manual page.
: "A brief introduction to features found in Bash." For a definitive reference on shell behavior please review the Bash manual page.

Revision as of 07:53, February 5, 2012

To use Carbon and other HPC systems, you will need to become familiar with many Unix/Linux concepts and ways of doing things. You will be navigating directories, create, view, and edit files, and run commands on the shell command line and in scripts. As you become comfortable and learn about more commands and shell features, you will find that you will work increasingly efficiently.

There are numerous resources to get you started, and some are shown below.

A note on free vs. paid: Free web pages and PDFs provide the extremes of coverage and style – short introductions on the one hand and detailed reference materials on the other. Those are relatively straightforward to put together. Teaching materials designed for a gradual learning curve, however, require quite some effort to prepare and hence usually are available for purchase only.

Beginners

HPC 2012-02-04 Book cover small - The Linux Command Line.png
The Linux Command Line – A Complete Introduction
  • By William E. Shotts Jr.; No Starch Press, January 2012; about $30 – $40 in print or as ebook.
Fairly gentle tutorial introducing Linux in general and command line usage in particular (brand new as of 2012, and promising). --stern
Introduction to the Linux Command Shell For Beginners (pdf)
Provides a "fast and simple introduction to using the Linux command shell and some of its basic utilities. Assumes very little or even no prior exposure to the Linux command prompt. References to DOS commands are made where appropriate. This document was meant to accompany an instructor-led tutorial on this subject, and therefore some details have been left out."
Very short, but does cover the basics of managing files and directories, and touches on key concepts like redirections and pipes. --stern
HPC 2012-02-04 Book cover small - Learning the bash.gif
Learning the bash Shell – Unix Shell Programming
  • By Cameron Newham; O'Reilly, March 2005; about $30–$50.
Valuable introduction, with exercises --stern.
The Bash Guide for Beginners
"Gets you started with Bash scripting…. Everybody who wants to make life easier on themselves, power users and sysadmins alike, can benefit from reading this practical course. The guide contains lots of examples and exercises at the end of each chapter, demonstrating the theory and helping you practice."

Intermediate

man bash
The Bash manual page is the definitive resource on capabilities and syntax. Covers all details of bash precisely and concisely.
Version note: The man command as shown gives the version relevant for your current system. See http://bashcookbook.com/bashinfo/#bash for other versions. Simple scripting concepts are applicable to all versions, but with each version capabilities were added to make scripting more flexible, such as array variables, arithmetic loops, and regular expression matching. --stern
Bash Reference Manual
"A brief introduction to features found in Bash." For a definitive reference on shell behavior please review the Bash manual page.
HPC 2012-02-04 Book cover small - bash Cookbook.gif
Advanced Bash-Scripting Guide
"This document is both a tutorial and a reference on shell scripting with Bash. It assumes no previous knowledge of scripting or programming, but progresses rapidly toward an intermediate/advanced level of instruction. The exercises and heavily-commented examples invite active reader participation."
bash Cookbook – Solutions and Examples for bash Users
  • By Carl Albing, JP Vossen, Cameron Newham; O'Reilly, May 2007; about $30–$50.
  • Related materials at http://bashcookbook.com/

Advanced

HPC 2012-02-04 Book cover small - Unix Power Tools.jpg
Unix Power Tools
  • By Jerry Peek, Shelley Powers, Tim O'Reilly, Mike Loukides; O'Reilly, Third Edition 2002. About $40–$70 in print or as ebook.
The Comprehensive List of bash Reference Documentation and Examples
Various documentation resources, sources, snippets, metadata across multiple versions (from the bash Cookbook wiki).