170 likes | 301 Vues
This introduction to UNIX shells covers key concepts such as what a shell is, common types of shells, and their functions. It will explain how shells act as command interpreters, their built-in commands, and how they facilitate command line editing. The course will delve into environment variables, shell initialization files, and the configuration of user settings. Additionally, it will explore shell metacharacters, globbing, command history, and editing practices. By the end, you'll have a foundational understanding of UNIX shell usage and customization.
E N D
CSC 140: Introduction to IT UNIX Shells CIT 140: Introduction to IT
Objectives • To describe what a UNIX shell is. • To describe briefly some commonly used shells CIT 140: Introduction to IT
What is a shell? A command interpreter. • Runs external commands like cp and rm. • Built-in commands change shell environment: • cd – change directory • VAR=value • I/O redirection. • cat /etc/shells >shells • Ease of use • Command line editing, tab completion, history. • Programming • Conditionals, loops, etc. CIT 140: Introduction to IT
Environment Variables CIT 140: Introduction to IT
Shell Initialization Files • Configure shell settings at login. • Create aliases. • Set environment variables. • bash initialization files • /etc/profile System-wide for sh and bash. • /etc/bashrc System-wide for bash. • ~/.bashrc User startup file. CIT 140: Introduction to IT
sh/csh Differences CIT 140: Introduction to IT
Which Shell Suits Your Needs? CIT 140: Introduction to IT
sh/csh Similarities CIT 140: Introduction to IT
How to change your shell? • Change your login shell. > chsh zsh • Run the other shell directly > echo $SHELL /bin/bash > zsh % CIT 140: Introduction to IT
Shell Metacharacters • Non-alphanumeric characters that have special meaning to the shell. • They cannot be used in shell commands. • Allow you to specify multiple files in multiple directories in one command line. CIT 140: Introduction to IT
Globbing • ? Matches any one character. • * Matches zero or more characters. • [] Matches list of characters inside brackets. CIT 140: Introduction to IT
Globbing > ls *html announce.html guidelines.html readings.html sites.html assignments.html index.html schedule.html > cd assignments > ls a[2-3]?html a2.html a3.html CIT 140: Introduction to IT
Command History Up-arrow Previous command Down-arrow Next command history List old commands !! Previous command !# Command # !$ Last arg of previous command CIT 140: Introduction to IT
Command line editing Ctrl-a Beginning of line Ctrl-e End of line Left-arrow Move back one character Right-arrow Move forward one character Ctrl-u Erase line CIT 140: Introduction to IT
Filename completion TAB Completes filename TAB-TAB Show list of possible completions. CIT 140: Introduction to IT