Unix Utilities

susv4 Single Unix Specification and Linux man pages

* marks built-in shell utilities which are documented in the Linux sh man page.

# marks non-susv4 utilities or other documentation.


Basic Commands

  susv4 Linux description
 ls ls list directory contents
*cd sh change the working directory
 man man display system documentation

 

 pwd pwd return working directory name
 mkdir mkdir make directories
 rmdir rmdir remove directories
 rm rm remove directory entries
 mv mv move (rename) files

 

 cat cat concatenate and print files
 more more display files on a page-by-page basis
#  less opposite of more
 head head copy the first part of files
 tail tail copy the last part of a file

 

#  nano Nano's ANOther editor, an enhanced free Pico clone
#  gcc GNU project C and C++ compiler
 make make maintain, update, and regenerate groups of programs

 

#  wget non-interactive network downloader
#  unzip list, test and extract compressed files in a ZIP archive
#  zip package and compress (archive) files


Weeks #3-4

  susv4 Linux description
*read sh read a line from standard input
 test test evaluate expression (also built-in sh)

 

 chmod chmod change the file modes
 comm comm select or reject lines common to two files
#  seq print a sequence of numbers
 touch touch change file access and modification times
 wc wc word, line, and byte or character count

 

 diff diff compare two files line by line
 printf printf write formatted output
#  rev reverse lines of a file or files


Weeks #6-7

  susv4 Linux description
 cmp cmp compare two files byte by byte
 tr tr translate characters

 

 paste paste merge corresponding or subsequent lines of files
#  shuf generate random permutations
 tee tee duplicate standard input

 

 kill kill terminate or signal processes
#  signal overview of signals

 

#  screen screen manager with VT100/ANSI terminal emulation


Weeks #8-9

Also see the shell Pattern Matching Notation and the susv4 chapter on Regular Expressions.

  susv4 Linux description
 awk awk pattern scanning and processing language
 ed ed edit text
 expr expr evaluate arguments as an expression
 grep grep search a file for a pattern
#  regex POSIX.2 regular expressions
 sed sed stream editor

 

 df df report free disk space
 ln ln link files

 

 ar ar create and maintain library archives
#  tar save and restore tape or disk archives
#  cpio copy files to and from archives

 

#  bzip2 a block-sorting file compressor
#  gzip compress or expand files

 

 find find find files
 sort sort sort, merge, or sequence check text files
 uniq uniq report or filter out repeated lines in a file
 xargs xargs construct argument lists and invoke utility


Weeks #10-13

  susv4 Linux description
 chown chown change the file ownership
 dd dd convert and copy a file
#  ldd print shared object dependencies
#stat stat get file status - includes description of struct stat
#  stat(1) display file or file system status

 

#execlp execlp execute a file
#fork fork create a child process
#getpid getpid get the process ID
#wait wait wait for process to change state

 

#dup2 dup2 duplicate a file descriptor
#pipe pipe create pipe
#  pipe(7) overview of pipes and FIFOs

 

#  lscpu display information about the CPU architecture
#  mpstat report processors related statistics
 ps ps report process status
#  top display processes
#  proc process information pseudo-file system

 

 yacc yacc yet another compiler compiler
 lex lex generate programs for lexical tasks


Other Commands

  susv4 Linux description
*alias sh define or display aliases
 at at execute commands at a later time
 basename basename return non-directory portion of a pathname
 batch batch schedule commands to be executed in a batch queue
 bc bc arbitrary-precision arithmetic language
*bg sh run jobs in the background
 c99 c99 compile standard C programs
 cal cal print a calendar
 chgrp chgrp change the file group ownership
 cksum cksum write file checksums and sizes
*command sh execute a simple command
 cp cp copy files
 crontab crontab schedule periodic background work
 csplit csplit split files based on context
 cut cut cut out selected fields of each line of a file
 date date write the date and time
 dirname dirname return the directory portion of a pathname
 du du estimate file space usage
 echo echo write arguments to standard output (also built-in sh)
 env env set the environment for command invocation
*eval sh construct command by concatenating arguments
 ex ex text editor
 expand expand convert tabs to spaces
 false false return false value
*fc sh process the command history list
*fg sh run jobs in the foreground
 file file determine file type
 fold fold filter for folding lines
 fuser fuser list process IDs of all processes that have one or more files open
 gencat gencat generate a formatted message catalog
 getconf getconf get configuration values
*getopts sh parse utility options
*hash sh remember or report utility locations
 iconv iconv codeset conversion
 id id return user identity
 ipcrm ipcrm remove an XSI message queue, semaphore set, or shared memory segment identifier
 ipcs ipcs report XSI interprocess communication facilities status
 join join relational database operator
 link link call link function
 locale locale get locale-specific information
 localedef localedef define locale environment
 logger logger log messages
 logname logname return the user's login name
 lp lp send files to a printer
 m4 m4 macro processor
 mesg mesg permit or deny messages
 mkfifo mkfifo make FIFO special files
 newgrp newgrp change to a new group
 nice nice invoke a utility with an altered nice value
 nl nl line numbering filter
 nm nm write the name list of an object file
 nohup nohup invoke a utility immune to hangups
 od od dump files in various formats
 patch patch apply changes to files
 pathchk pathchk check pathnames
 pr pr print files
 renice renice set nice values of running processes
 sh sh shell, the standard command language interpreter
 sleep sleep suspend execution for an interval
 split split split files into pieces
 strings strings find printable strings in files
 strip strip remove unnecessary information from strippable files
 stty stty set the options for a terminal
 tabs tabs set terminal tabs
 time time time a simple command
 tput tput change terminal characteristics
 true true return true value
 tsort tsort topological sort
 tty tty return user's terminal name
*ulimit sh set or report file size limit
*umask sh get or set the file mode creation mask
*unalias sh remove alias definitions
 uname uname return system name
 uncompress uncompress expand compressed data
 unexpand unexpand convert spaces to tabs
 unlink unlink call the unlink function
 vi vi screen-oriented (visual) display editor
*wait sh await process completion
 who who display who is on the system
#  whoami print effective userid
#  w show who is logged on and what they are doing
 write write write to another user
 zcat zcat expand and concatenate data
 


#  base64 base64 encode/decode data
#  openssl OpenSSL command line tool

 

#  clear clear the terminal screen
#  col filter reverse line feeds from input
#  error analyze and disperse compiler error messages
#  fmt simple optimal text formatter
#  fortune print a random, hopefully interesting, adage
#  gpg OpenPGP encryption and signing tool
#  indent reformat a C program
#  script make typescript of terminal session
#  sha1sum compute and check SHA1 message digest
#  stdbuf run command with modified buffering
#  tac concatenate and print files in reverse
#  which locate a command
#  yes output a string repeatedly until killed

 

#clock_gettime clock_gettime clock and time functions
#isatty isatty test for a terminal device
#regcomp regcomp regcomp, regerror, regexec, regfree - regular expression matching
#strftime strftime format date and time
#  time(7) overview of time and timers
#  GNU date input formats
#  urandom kernel random number source devices

 

#closedir closedir close a directory
#ftw ftw file tree walk
#opendir opendir open a directory
#readdir readdir read a directory
#scandir scandir scan a directory for matching entries

 

#dlopen dlopen gain access to an executable object file (example)
#dlsym dlsym obtain the address of a symbol from a dlopen object
#dlclose dlclose close a dlopen object
#dlerror dlerror get dynamic linking diagnostic information

 

#  mknod make block or character special files
#mknod mknod create a special or ordinary file

 

#alarm alarm set an alarm clock for delivery of a signal
#close close close a file descriptor
#fdopen fdopen associate a stream with a file descriptor

 

#  dc an arbitrary precision calculator
#  bc arbitrary precision arithmetic language (SunOS-5)
#  dc desk calculator (SunOS-5)


Utilities which are less generally useful and may have no Linux man pages:

  susv4   description
 admin   create and administer SCCS files
 asa   interpret carriage-control characters
 cflow   generate a C-language flowgraph
 compress   compress data
 ctags   create a tags file
 cxref   generate a C-language program cross-reference table
 delta   make a delta (change) to an SCCS file
 fort77   FORTRAN compiler
 get   get a version of an SCCS file
 jobs   display status of jobs in the current session
 mailx   process messages
 pax   portable archive interchange
 prs   print an SCCS file
 qalter   alter batch job
 qdel   delete batch jobs
 qhold   hold batch jobs
 qmove   move batch jobs
 qmsg   send message to batch jobs
 qrerun   rerun batch jobs
 qrls   release batch jobs
 qselect   select batch jobs
 qsig   signal batch jobs
 qstat   show status of batch jobs
 qsub   submit a script
 rmdel   remove a delta from an SCCS file
 sact   print current SCCS file-editing activity
 sccs   front end for the SCCS subsystem
 talk   talk to another user
 type   write a description of command type
 unget   undo a previous get of an SCCS file
 uucp   system-to-system copy
 uudecode   decode a binary file
 uuencode   encode a binary file
 uustat   uucp status enquiry and job control
 uux   remote command execution
 val   validate SCCS files
 what   identify SCCS files