Winter 2018 - January to April 2018 - Updated 2018-09-23 15:46 EDT
This is a list of Unix/Linux command names used in this course and (eventually) the week number in which they were first introduced and described. A missing week number means the command hasn’t been formally introduced yet. This page is updated weekly as new commands are introduced.
Almost all these command names have manual pages. Command names that are built-in to the shell (e.g. cd
, exit
, pwd
, history
, etc.) are described somewhere in the man page for the bash
shell and you can also use the BASH shell built-in help
command to get information about built-in commands, e.g. help help
and help pwd
, etc.
This list only gives the names of the commands, not what the commands do or how to use them. As each command is introduced, you must keep your own notebook with these command names in it and a short description of what each command does; you will be required to learn and remember at least some of what each of these commands can do.
Solutions to assignments in this course use only these command names. If you want to use other command names, clear it with your instructor first.
WK Topic covered (estimate -- subject to change)
-- ----------------------------------------------------------------------
01 How the course works; submitting to Blackboard; course information.
01 Remote Login to the Course Linux Server and simple commands
02 Recall terminal command line history using UpArrow DownArrow keys
02 Simple command line Output Redirection using >file.txt
02 File Transfer to/from the CLS
02 Terminal Control Characters: ^C ^L
02 Using Copy and Paste in PuTTY via mouse drag and right-click
02 More Terminal Control Characters: ^C ^L ^W ^U ^R
02 More Terminal Control Characters: ^D ^Z
02 RTFM Manual Pages
03 Absolute and Relative pathnames
03 Setting the BASH shell prompt: PS1='[\u@\h \W]\$ '
03 Finding files and basic commands
03 GLOB characters: * ? [...], aliases
03 Text Editors: basic VIM, nano (use VIM instead)
04 I/O Redirection: stdin, stdout, stderr, < > | 2>&1, Pipes
05 Midterm Test #1 45 min - in the lecture class
-- February 19-23 2018 Study Break Week (Winter Break / Reading Week)
06 Midterm Test #1 analysis
06 Start-up files (.bashrc .bash_profile)
06 Selecting fields with awk and cut
06 Shell local and environment variables, export, printenv
06 Search $PATH
06 Quoting
07 Linux File System
07 Inodes and hard links, ln
07 Disk Usage, du, quota
07 Symbolic links
08 Permissions: whoami, id, groups, chmod
08 Permissions: umask
08 Compression, archives, difference: gzip, tar, diff
09 System logs, dmesg, syslog
09 Processes, Jobs, Background, Foreground, Kill, Signals
09 Midterm Test #2 45 min - in the one-hour lecture class
09 *** Final Withdrawal Date Thursday March 22 2018 (Week 9) ***
10 Midterm Test #2 analysis
10 Scheduling with crontab, at
10 Introduction to Shell Scripts and positional parameters $0, $1, $#, $*, $@
11 Shell command Substitution using $(...)
11 Shell Integer Arithmetic using $((...))
11 Command exit status and $?
11 Debugging shell scripts with -v and -x
11 Shell control statements, the "test" helper command
12 Shell control statements
13 Shell control statements; shell script problems
14 Final Exam – 10:30am Saturday April 28 2018 – 40%
WK Command name first introduced (read the course notes)
-- ----------------------------------------------------------------------
10 & (shell built-in)
&& (shell built-in)
|| (shell built-in)
11 $(( (shell built-in)
11 $(...) and `...` (shell built-in)
11 : (shell built-in)
03 alias (shell built-in)
02 apropos (same as man -k)
10 at ( -c )
10 atq
10 atrm
05 awk '{print $1}' (also $2, $NF, etc.)
02 bash
10 bg (shell built-in)
08 bunzip2
08 bzip2
08 bzcat, bzless, bzfgrep, bzgrep, bzdiff, etc.
01 cal (9 1752)
case (shell built-in)
01 cat
02 cd (shell built-in)
08 chmod ( -R ugo[-+=]rwx octal_number )
03 clear (see also ^L)
01 cmatrix -s
03 cp ( -a -r -p )
10 crontab ( -l -e -r )
04 cut
01 date
07 df
08 diff
09 dmesg
do (shell built-in)
07 du
01 echo (shell built-in and external)
elif (shell built-in)
04 elinks ( -dump -no-numbering -no-references )
11 else (shell built-in)
esac (shell built-in)
01 exit (shell built-in)
06 export (shell built-in)
10 expr (shell built-in)
10 false (shell built-in)
02 fg (shell built-in: use after ^Z stops a process)
03 fgrep (same as grep -F) ( -i -v -w )
11 fi (shell built-in)
01 figlet
02 file
03 find ( -name -user -inum -size -print -ls )
for (shell built-in)
01 fortune
10 from
function (shell built-in)
03 grep (use fgrep instead until you learn regular expressions next term)
08 groups
08 gunzip
08 gzip
03 head
03 help (shell built-in)
01 history (shell built-in)
06 hostname
08 id
11 if (shell built-in)
10 jobs (shell built-in)
10 kill (shell built-in)
10 killall
02 less (similar to "more"; used by "man")
10 let (deprecated shell built-in)
07 ln ( -s )
03 locate ( see slocate )
02 ls ( -l -i -a -d -L -t -b )
10 mail ( -s )
02 man ( -k )
03 mkdir ( -p )
03 more (similar to "less")
03 mv
03 nano [*** USE VIM INSTEAD ***]
04 nl (same as "cat -n")
02 passwd
06 printenv
10 ps ( uaxww -efww )
10 pstree
02 pwd (shell built-in and also external)
07 quota -v
read (shell built-in)
02 rm ( -r -f )
03 rmdir
06 set (shell built-in)
11 sh ( -u -x -v ) (symlink to "/bin/dash" on Ubuntu CLS)
11 shift (shell built-in)
06 shopt (shell built-in)
01 sl
03 sleep (60)
03 slocate
04 sort ( -f -n -r ) (see the weekly notes)
03 sum
04 tail
08 tar ( -c -x -t -v -f -z -j )
11 test (shell built-in and also external) also known as [
11 then (shell built-in)
01 toilet ( --gay )
10 top
03 touch
04 tr
11 true (shell built-in)
03 tree
08 umask ( octal_number ) (shell built-in)
03 unalias ( -a ) (shell built-in)
04 uniq ( -c ) (see the weekly notes and examples of pipes)
08 unzip
01 users
03 vi / vim / vimtutor
02 wc ( -l -w -c )
06 whereis
06 which
while (shell built-in)
01 who
08 whoami
03 whois (see the weekly notes on SSH attacks)
08 zip
08 zcat, zless, zfgrep, zgrep, zdiff, etc.
Keep a notebook with these command names in it and a short description of what each command does; you will be required to learn and remember at least some of what each of these commands can do.