Fall 2018 - September to December 2018 - Updated 2018-11-26 19:49 EST
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. Do not use other commands in your assignment solutions.
WK Topic covered (estimate -- subject to change)
-- ----------------------------------------------------------------------
01 How the course works; submitting to Brightspace; 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 Start-up files (.bashrc .bash_profile)
05 Selecting fields with awk and cut
05 Shell local and environment variables, export, printenv
05 Search $PATH
05 Quoting
06 *** Midterm Test #1 45 min - in the one-hour lecture class
07 Midterm Test #1 analysis
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 Scheduling with crontab, at
10 Introduction to Shell Scripts and positional parameters $0, $1, $#, $*, $@
10 *** Midterm Test #2 45 min - in the one-hour lecture class
10 *** Final Withdrawal Date Friday November 9 2018 (Week 10)
11 Midterm Test #2 analysis
11 Shell command Substitution using $(...)
11 Shell Integer Arithmetic using $((...))
11 Command exit status and $?
11 Debugging shell scripts with -v and -x
12 Shell control statements, the "test" helper command
13 Shell control statements; good error and usage messages
13 Shell control statements; shell script problems
15 *** Final Exam - three hours 8am to 11am Thursday December 13
WK Command name first introduced (read the course notes; subject to change)
-- ----------------------------------------------------------------------
09 & (shell built-in)
13 && (shell built-in)
13 || (shell built-in)
10 $(( (shell built-in)
10 $(...) and `...` (shell built-in)
12 : (shell built-in)
03 alias (shell built-in)
02 apropos (same as man -k)
09 at ( -c )
09 atq
09 atrm
04 awk '{print $1}' (also $2, $NF, etc.)
02 bash
09 bg (shell built-in)
08 bunzip2
08 bzip2
08 bzcat, bzless, bzfgrep, bzgrep, bzdiff, etc.
01 cal (9 1752)
12 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
02 cp ( -a -r -p )
09 crontab ( -l -e -r )
04 cut
01 date
07 df
09 diff
09 dmesg
12 do (shell built-in)
07 du
01 echo (shell built-in and external)
12 elif (shell built-in)
04 elinks ( -dump -no-numbering -no-references )
12 else (shell built-in)
12 esac (shell built-in)
01 exit (shell built-in)
05 export (shell built-in)
12 expr (shell built-in)
12 false (shell built-in)
02 fg (shell built-in: use after ^Z stops a process)
03 fgrep (same as grep -F) ( -i -v -w )
12 fi (shell built-in)
01 figlet
02 file
03 find ( -name -user -inum -size -print -ls )
12 for (shell built-in)
01 fortune
09 from
13 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)
05 hostname
08 id
11 if (shell built-in)
09 jobs (shell built-in)
09 kill (shell built-in)
09 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 )
09 mail ( -s )
02 man ( -k )
03 mkdir ( -p )
03 more (similar to "less")
02 mv
03 nano [*** USE VIM INSTEAD ***]
04 nl (same as "cat -n")
02 passwd
05 printenv
09 ps ( uaxww -efww )
09 pstree
02 pwd (shell built-in and also external)
07 quota -v
13 read (shell built-in)
02 rm ( -r -f )
03 rmdir
05 set (shell built-in)
11 sh ( -u -x -v ) (symlink to "/bin/dash" on Ubuntu CLS)
11 shift (shell built-in)
05 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 [
10 then (shell built-in)
01 toilet ( --gay )
09 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 )
05 whereis
05 which
12 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.