Difference between revisions of "Introduction to Linux in HPC/Shell scripting"

From HPC Wiki
Introduction to Linux in HPC/Shell scripting
Jump to navigation Jump to search
(Add opening text)
m (Re-structure Ex.1 a bit; Capital C in Ex.6)
Line 33: Line 33:
  
  
  1. a. Write a script that
+
  1. Write a script that:
     b. Prints an environment variable
+
     a. Prints an environment variable
     c. Saves the output of the date command to a variable
+
     b. Saves the output of the '''date''' command to a variable
     d. Sleeps briefly
+
     c. Sleeps for 2 seconds
     e. Prints the new and old date and time
+
     d. Prints the new and old date and time
 
   {| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
   {| role="presentation" class="wikitable mw-collapsible mw-collapsed"
 
     | <strong>Answer:</strong>
 
     | <strong>Answer:</strong>
Line 136: Line 136:
 
     |}
 
     |}
  
  6. create an shell variable MYIDENTITY and export it as below:  
+
  6. Create an shell variable MYIDENTITY and export it as below:  
 
     <code>$ export MYIDENTITY=whoami</code>
 
     <code>$ export MYIDENTITY=whoami</code>
 
     How will you list the shell variable MYIDENTITY?
 
     How will you list the shell variable MYIDENTITY?

Revision as of 13:22, 1 December 2020

Tutorial
Title: Introduction to Linux in HPC
Provider: HPC.NRW

Contact: tutorials@hpc.nrw
Type: Multi-part video
Topic Area: HPC Platforms
License: CC-BY-SA
Syllabus

1. Background and History
2. The Command Line
3. Linux Directory Structure
4. Files
5. Text display and search
6. Users and permissions
7. Processes
8. The vim text editor
9. Shell scripting
10. Environment variables
11. System configuration
12. SSH Connections
13. SSH: Graphics and File Transfer
14. Various tips

In this video the concept of shell scripting is introduced. Commands entered into the console can also be written into a text file to create an executable script. The tutorial will describe how to create such a script, explain its basic structure and how to execute it in the console.

Video

( Slides as pdf)

Quiz

Which bash command below assigns "value" to variable var?

var="value"
var = "value"
var=="value"

Exercises in Terminal

1. Write a script that:
   a. Prints an environment variable
   b. Saves the output of the date command to a variable
   c. Sleeps for 2 seconds
   d. Prints the new and old date and time
2. Find a way to execute a script without setting execute permissions.
3. Find out how to do other programming things in bash (e.g. functions, classes). How convenient do they look?
4. Look at different ways you can define if conditions.
5. Find out what different types of quotes (single ' vs. double ") do?
6. Create an shell variable MYIDENTITY and export it as below: 
   $ export MYIDENTITY=whoami
   How will you list the shell variable MYIDENTITY?
   Execute the shell variable MYIDENTITY, what is the output? 



<< The vim Text Editor

Overview

Environment Variables >>