CSC 140: Introduction to IT UNIX Shells CIT 140: Introduction to IT
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
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
CIT 140: Introduction to IT sh/csh Differences CIT 140: Introduction to IT
Which Shell Suits Your Needs? CIT 140: Introduction to IT
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
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
CIT 140: Introduction to IT
CIT 140: Introduction to IT
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
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
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
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
CIT 140: Introduction to IT Filename completion TAB Completes filename TAB-TAB Show list of possible completions. CIT 140: Introduction to IT