Difference between revisions of "Introduction to Linux in HPC/The Command Line"

From HPC Wiki
Introduction to Linux in HPC/The Command Line
Jump to navigation Jump to search
m (Title and sorting tweaks)
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[Category:Tutorials]]
+
[[Category:Tutorials|Command Line (Linux)]]<nowiki />
 
+
{{DISPLAYTITLE:Command Line (Linux)}}<nowiki />
 +
{{Syllabus Introduction to Linux}}<nowiki />
 
__TOC__
 
__TOC__
  
{{Infobox table
+
This part of the tutorial introduces one of the most important tools in Linux-based systems: the command line. The command line is basically a text interface for your computer and it can be pretty daunting at first if you are used to a graphical user interface (GUI). This short tutorial explains the basics enabling you to get started straight away!
| REAL-NAME    = HPC.NRW
 
| image  =  Hpc.nrw_small.png ‎
 
| Feldnamehead1 = Other HPC Courses
 
| Feldname2 = GPU      | Daten3 = Introduction to GPU Programming
 
| Feldname3 = GPROF    | Daten4 = [https://hpc-wiki.info/hpc/GPROF_Tutorial Gprof Tutorial]
 
| Feldnamehead2 =  Introduction to Linux in HPC
 
| Feldname5 = 1. | Daten6 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Historical_Background Historical Background]
 
| Feldname6 = 2. | Daten7 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/The_Command_Line The Command Line]
 
| Feldname7 = 3. | Daten8 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Directory_structure Directory structure]
 
| Feldname8 = 4. | Daten9 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Files Files]
 
| Feldname9 = 5. | Daten10 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Text_display_search Text display search]
 
| Feldname10 = 6. | Daten11 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Processes_and_permissions Processes and permissions]
 
| Feldname11 = 7. | Daten12 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/The_vim_text_editor The vim text editor]
 
| Feldname12 = 8. | Daten13 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Shell_scripting_environment_variables Shell scripting environment variables]
 
| Feldname13 = 9. | Daten14 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/System_configuration_files System configuration files]
 
| Feldname14 = 10. | Daten15 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Various_tips Various tips]
 
| Feldname15= 11. | Daten16 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Beyond_the_cluster Beyond the cluster]
 
| Feldname16= 12. | Daten17 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Linux_in_HPC Linux in HPC]
 
| Feldname17= 13. | Daten18 = [https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/SSH_Login SSH Login]
 
}}
 
  
 
=== Video === <!--T:5-->
 
=== Video === <!--T:5-->
  
<youtube width="600" height="400" right>IfD9IPixgpo</youtube>
+
<youtube width="600" height="340" right>LkSvJoi6TQE</youtube>
 +
 
 +
([[Media:HPC.NRW_Introduction_to_Linux_in_HPC_02_The_Command_Line.pdf | Slides as pdf]])
  
 
=== Quiz === <!--T:5-->   
 
=== Quiz === <!--T:5-->   
  
 
{{hidden begin  
 
{{hidden begin  
|title = Which keys can be used for command history?
+
|title = Which keys can be used to access the command history?
 
}}
 
}}
 
<quiz display=simple>
 
<quiz display=simple>
Line 38: Line 21:
 
|type="()"}
 
|type="()"}
 
+  up- and down-arrow keys
 
+  up- and down-arrow keys
|| Explanation: up- and down-arrow keys (↑ and ↓) can be used for command history. The behavior of Page-up and Page-down keys depends on the setting of a terminal. But normally the command history is not available by using the Page-up and Page-down keys.
+
|| Explanation: up- and down-arrow keys (↑ and ↓) can be used to access the command history. The behavior of page-up and page-down keys depends on the setting of a terminal. But normally the command history is not available by using the page-up and page-down keys.
Page-up and Page-down keys
+
page-up and page-down keys
 +
||
 +
</quiz>
 +
{{hidden end}}
 +
 
 +
{{hidden begin
 +
|title = Which character do command line options conventionally start with?
 +
}}
 +
<quiz display=simple>
 +
{
 +
|type="()"}
 +
-  the dollar sign
 +
||
 +
+  the dash sign (hyphen)
 +
|| Explanation: the dash sign is used to prefix a command line option, however, it can vary depending on the program developer. A single dash signals multiple, single-character flags and a double dash prefixes a single multicharacter option.
 +
- the greater-than sign
 +
||
 +
</quiz>
 +
{{hidden end}}
 +
 
 +
{{hidden begin
 +
|title = What happens if the control and c keys (Ctrl+C) are pressed simultaneously on the command line?
 +
}}
 +
<quiz display=simple>
 +
{
 +
|type="()"}
 +
+  the current command is aborted
 +
|| Explanation: on the command line pressing the Ctrl+C keys together aborts the command or program currently running and returns you to the command line. However, be aware that Ctrl+C may be used to copy text in a GUI environment!
 +
-  a script starts running in the shell
 +
||
 +
-  highlighted text is copied to the clipboard
 +
</quiz>
 +
{{hidden end}}
 +
 
 +
{{hidden begin
 +
|title = Which one of these is not (normally) an element of the console prompt statement?
 +
}}
 +
<quiz display=simple>
 +
{
 +
|type="()"}
 +
-  working directory
 +
||
 +
-  user name
 +
||
 +
-  host name
 +
+  time and date
 +
|| Explanation: the time and date is not normally shown in the console prompt statement, however, be aware that this behaviour can be changed!
 +
||
 +
</quiz>
 +
{{hidden end}}
 +
 
 +
{{hidden begin
 +
|title = How can I list all available commands if I don’t know the exact name of the command, for example?
 +
}}
 +
<quiz display=simple>
 +
{
 +
|type="()"}
 +
-  press the enter key
 +
||
 +
-  read the man pages
 +
||
 +
+  press the tab key
 +
|| Explanation: Auto-completion or tab-completion completes the rest of a partially typed command for you, if it is available on the system. If there are multiple possibilities, press the tab key a second time to list all available options.
 
||  
 
||  
 +
-  use the --help option
 
</quiz>
 
</quiz>
 
{{hidden end}}
 
{{hidden end}}
Line 97: Line 143:
 
     |}
 
     |}
  
<div style='text-align: left;float:left;width:33%;'>{{Clickable button|[https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Historical_Background Previous Page]|color=white}}</div>
+
{{Tutorial Navigation
<div style='text-align: center;float:left;width:33%;'>{{Clickable button|[https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC Main Menu Page]|color=white}}</div>
+
| previous = [[Introduction_to_Linux_in_HPC/Historical_Background | Background and History ]]
<div style='text-align: right;float:left;width:33%;'>{{Clickable button|[https://hpc-wiki.info/hpc/Introduction_to_Linux_in_HPC/Directory_structure Next Page]|color=white}}</div>
+
| main = [[Introduction_to_Linux_in_HPC | Overview ]]
 +
| next = [[Introduction_to_Linux_in_HPC/Directory_structure | Linux Directory Structure ]]
 +
}}

Latest revision as of 17:20, 4 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

This part of the tutorial introduces one of the most important tools in Linux-based systems: the command line. The command line is basically a text interface for your computer and it can be pretty daunting at first if you are used to a graphical user interface (GUI). This short tutorial explains the basics enabling you to get started straight away!

Video

( Slides as pdf)

Quiz

Which keys can be used to access the command history?

up- and down-arrow keys
page-up and page-down keys

Which character do command line options conventionally start with?

the dollar sign
the dash sign (hyphen)
the greater-than sign

What happens if the control and c keys (Ctrl+C) are pressed simultaneously on the command line?

the current command is aborted
a script starts running in the shell
highlighted text is copied to the clipboard

Which one of these is not (normally) an element of the console prompt statement?

working directory
user name
host name
time and date

How can I list all available commands if I don’t know the exact name of the command, for example?

press the enter key
read the man pages
press the tab key
use the --help option


Info:  Working directory in console reminds user, where they are. (page 27)


Warning:  In command line user may forget where they are. (page 26)
Child processes may stop, if parent shell exits. (page 26)

Exercises in Terminal

1. What's your username on a Linux computer?
  There are two ways to find your username on a Linux computer 
2. What's the hostname of a Linux computer?
  There are two ways to find the hostname on a Linux computer.
3. What's your current working directory on a Linux computer?
   There are two ways to find your current working directory on a Linux computer.
4.  Use up- and down- (↑ and ↓) arrow keys to see the command history.
5.  Run sleep 1h command and wait, then use Ctrl-C to kill it.


<< Background and History

Overview

Linux Directory Structure >>