HPC/Linux Guides: Difference between revisions
< HPC
Jump to navigation
Jump to search
m (→Beginners) |
mNo edit summary |
||
Line 1: | Line 1: | ||
{| class="wikitable" cellpadding="1" style="float: right; text-align:center;" | |||
| __TOC__ | |||
|} | |||
To use ''Carbon'' and other HPC systems, you will need to become familiar with the Unix/Linux ways of doing things. | To use ''Carbon'' and other HPC systems, you will need to become familiar with the Unix/Linux ways of doing things. | ||
You will be navigating directories, create, view, and edit various text files, and run commands on the shell command line and in scripts. | You will be navigating directories, create, view, and edit various text files, and run commands on the shell command line and in scripts. | ||
As you become comfortable and learn more about commands and shell features you will find that you get much more efficient. | As you become comfortable and learn more about commands and shell features you will find that you get much more efficient. | ||
Line 5: | Line 9: | ||
There are numerous resources to get you started; some are shown below. | There are numerous resources to get you started; some are shown below. | ||
A note on free vs. paid content: | ; A note on free vs. paid content: | ||
Those are relatively straightforward to put together. | :* Web pages and PDFs that are available at no cost usually contain either short ''introductions'' or more or less detailed ''reference'' materials. Those are relatively straightforward to put together from existing sources, but when compared to a textbook or course on the subject, they would constitute only the first and last chapters. | ||
:* Materials created for ''teaching'', by contrast, will present the entirety of the subject matter, and at a gradual learning curve. This requires a great deal more effort and time to assemble, and thus, these materials are usually available upon purchase. | |||
Choose wisely. | : '''''Choose wisely.''''' | ||
== Beginners == | == Beginners == | ||
Line 36: | Line 37: | ||
: "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." | : "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." | ||
<!-- | |||
=== Classes === | === Classes === | ||
Onsite users can benefit from classes occasionally offered by CIS. | Onsite users can benefit from classes occasionally offered by CIS. | ||
* [http://inside.anl.gov/event/beginning-unix-cis-564 Beginning UNIX (CIS 564)] | * [http://inside.anl.gov/event/beginning-unix-cis-564 Beginning UNIX (CIS 564)] | ||
* [http://inside.anl.gov/event/vi-editor-unix-cis-567 vi Editor in UNIX (CIS 567)] | * [http://inside.anl.gov/event/vi-editor-unix-cis-567 vi Editor in UNIX (CIS 567)] | ||
--> | |||
== Intermediate == | == Intermediate == |
Revision as of 20:01, May 1, 2020
To use Carbon and other HPC systems, you will need to become familiar with the Unix/Linux ways of doing things.
You will be navigating directories, create, view, and edit various text files, and run commands on the shell command line and in scripts. As you become comfortable and learn more about commands and shell features you will find that you get much more efficient.
There are numerous resources to get you started; some are shown below.
- A note on free vs. paid content
-
- Web pages and PDFs that are available at no cost usually contain either short introductions or more or less detailed reference materials. Those are relatively straightforward to put together from existing sources, but when compared to a textbook or course on the subject, they would constitute only the first and last chapters.
- Materials created for teaching, by contrast, will present the entirety of the subject matter, and at a gradual learning curve. This requires a great deal more effort and time to assemble, and thus, these materials are usually available upon purchase.
- Choose wisely.
Beginners
- The Linux Command Line, 2nd Edition – A Complete Introduction
-
- by William Shotts; No Starch Press, March 2019, 504 pp.; ISBN-13: 9781593279523; about $30 – $40 in print or as ebook.
- Fairly gentle tutorial introducing Linux in general and command line usage in particular (2012, 2019). --stern
- Manipulating Data on Linux – (alternate link)
- By Harry Mangalam, UC Irvine.
Very good introduction to concepts and tools, especially for persons coming from a Windows background.
- 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
- 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
help cmd
- The Bash manual page is the definitive resource on capabilities and syntax. It covers all details of bash precisely and concisely. The
help
command gives the paragraph from the man page (or a close version thereof) relevant to the bash builtin cmd. - Version note: A couple of major versions of Bash are in concurrent popular use, mostly Bash-3, phasing in Bash-4. While simple scripting concepts are applicable to all versions, each version introduces capabilities for more versatile scripting, such as array variables, arithmetic loops, and regular expression matching. The
man
command always shows the capabilities of the version in use on your system. See http://bashcookbook.com/bashinfo/#bash for other versions. --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.
- 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
- 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).
- What's your most productive shortcut with vim?
- A question asked on Stackoverflow, with an enlightening answer.