List of POSIX commands#List

{{Short description|None}}

{{Plain image with caption|POSIX Utilities.pdf|width=177px|Utilities listed in POSIX.1-2017}}

This is a list of the shell commands of the most recent version of the Portable Operating System Interface (POSIX) {{endash}} IEEE Std 1003.1-2024 which is part of the Single UNIX Specification (SUS). These commands are implemented in many shells on modern Unix, Unix-like and other operating systems. This list does not cover commands for all versions of Unix and Unix-like shells nor other versions of POSIX.

{{Sticky header}}

{{Table alignment}}

class="wikitable sortable sticky-header col3center"
scope="col" | Name

!scope="col" | Category

!scope="col" | Status (Option code)

!scope="col" | Description

!scope="col" | First appeared

scope="row"| {{codett|admin}}

| SCCS

| {{Optional}} (XSI)

| Create and administer SCCS files

| PWB UNIX

scope="row"| alias (command)

| Misc

| {{needs|Mandatory}}

| Define or display aliases

|

scope="row"| ar (Unix)

| Misc

| {{needs|Mandatory}}

| Create and maintain library archives

| Version 1 AT&T UNIX

scope="row"| {{codett|asa}}

| Text processing

| {{Optional}} (FR)

| Interpret carriage-control characters

| System V

scope="row"| at (command)

| Process management

| {{needs|Mandatory}}

| Execute commands at a later time

| Version 7 AT&T UNIX

scope="row"| AWK

| Text processing

| {{needs|Mandatory}}

| Pattern scanning and processing language

| Version 7 AT&T UNIX

scope="row"| basename

| Filesystem

| {{needs|Mandatory}}

| Return non-directory portion of a pathname; see also dirname

| Version 7 AT&T UNIX

scope="row"| batch (Unix)

| Process management

| {{needs|Mandatory}}

| Schedule commands to be executed in a batch queue

|

scope="row"| bc (programming language)

| Misc

| {{needs|Mandatory}}

| Arbitrary-precision arithmetic language

| Version 6 AT&T UNIX

scope="row"| bg (Unix)

| Process management

| {{Optional}} (UP)

| Run jobs in the background

|

scope="row"| C compiler/C17_(C_standard_revision)

| C programming

| {{Optional}} (CD)

| Compile standard C programs

| IEEE Std 1003.1-2024

scope="row"| cal (command)

| Misc

| {{Optional}} (XSI)

| Print a calendar

| Version 5 AT&T UNIX

scope="row"| cat (Unix)

| Filesystem

| {{needs|Mandatory}}

| Concatenate and print files

| PDP-7 UNIX

scope="row"| cd (command)

| Filesystem

| {{needs|Mandatory}}

| Change the working directory

| Version 6 AT&T UNIX

scope="row"| cflow

| C programming

| {{Optional}} (XSI)

| Generate a C-language call graph

| System V

scope="row"| chgrp

| Filesystem

| {{needs|Mandatory}}

| Change the file group ownership

| PWB UNIX

scope="row"| chmod

| Filesystem

| {{needs|Mandatory}}

| Change the file modes/attributes/permissions

| PDP-7 UNIX

scope="row"| chown

| Filesystem

| {{needs|Mandatory}}

| Change the file ownership

| PDP-7 UNIX

scope="row"| cksum

| Filesystem

| {{needs|Mandatory}}

| Write file checksums and sizes

| 4.4BSD

scope="row"| cmp (Unix)

| Filesystem

| {{needs|Mandatory}}

| Compare two files; see also diff

| Version 1 AT&T UNIX

scope="row"| comm

| Text processing

| {{needs|Mandatory}}

| Select or reject lines common to two files

| Version 4 AT&T UNIX

scope="row"| command (Unix)

| Shell programming

| {{needs|Mandatory}}

| Execute a simple command

|

scope="row"| compress

| Filesystem

| {{Optional}} (XSI)

| Compress data

| 4.3BSD

scope="row"| cp (Unix)

| Filesystem

| {{needs|Mandatory}}

| Copy files

| PDP-7 UNIX

scope="row"| crontab

| Misc

| {{needs|Mandatory}}

| Schedule periodic background work

| System V

scope="row"| csplit

| Text processing

| {{needs|Mandatory}}

| Split files based on context

| PWB UNIX

scope="row"| ctags

| C programming

| {{Optional}} (SD)

| Create a tags file

| 3BSD

scope="row"| cut (Unix)

| Text processing

| {{needs|Mandatory}}

| Cut out selected fields of each line of a file

| System III

scope="row"| cxref

| C programming

| {{Optional}} (XSI)

| Generate a C-language program cross-reference table

| System V

scope="row"| Date (Unix command)

| Misc

| {{needs|Mandatory}}

| Sets or displays the date and time

| Version 1 AT&T UNIX

scope="row"| dd (Unix)

| Filesystem

| {{needs|Mandatory}}

| Convert and copy a file

| Version 5 AT&T UNIX

scope="row"| delta (Unix)

| SCCS

| {{Optional}} (XSI)

| Make a delta (change) to an SCCS file

| PWB UNIX

scope="row"| df (Unix)

| Filesystem

| {{needs|Mandatory}}

| Report free disk space

| Version 1 AT&T UNIX

scope="row"| diff

| Text processing

| {{needs|Mandatory}}

| Compare two files; see also cmp

| Version 5 AT&T UNIX

scope="row"| dirname

| Filesystem

| {{needs|Mandatory}}

| Return the directory portion of a pathname; see also basename

| System III

scope="row"| du (Unix)

| Filesystem

| {{needs|Mandatory}}

| Estimate file space usage

| Version 1 AT&T UNIX

scope="row"| echo (command)

| Shell programming

| {{needs|Mandatory}}

| Write arguments to standard output

| Version 2 AT&T UNIX

scope="row"| ed (text editor)

| Text processing

| {{needs|Mandatory}}

| The standard text editor

| PDP-7 UNIX

scope="row"| env (shell)

| Misc

| {{needs|Mandatory}}

| Set the environment for command invocation

| System III

scope="row"| ex (text editor)

| Text processing

| {{Optional}} (UP)

| Text editor

| 1BSD

scope="row"| expand (Unix)

| Text processing

| {{needs|Mandatory}}

| Convert tabs to spaces

| 3BSD

scope="row"| expr

| Shell programming

| {{needs|Mandatory}}

| Evaluate arguments as an expression

| Version 7 AT&T UNIX

scope="row"| false (Unix)

| Shell programming

| {{needs|Mandatory}}

| Return false value

| Version 7 AT&T UNIX

scope="row"| fc (Unix)

| Misc

| {{Optional}} (UP)

| Process the command history list

|

scope="row"| fg (Unix)

| Process management

| {{Optional}} (UP)

| Run jobs in the foreground

|

scope="row"| file (command)

| Filesystem

| {{needs|Mandatory}}

| Determine file type

| Version 4 AT&T UNIX

scope="row"| find (Unix)

| Filesystem

| {{needs|Mandatory}}

| Find files

| Version 1 AT&T UNIX

scope="row"| fold (Unix)

| Text processing

| {{needs|Mandatory}}

| Filter for folding lines

| 1BSD

scope="row"| fuser (Unix)

| Process management

| {{Optional}} (XSI)

| List process IDs of all processes that have one or more files open

| System V

scope="row"| gencat

| Misc

| {{needs|Mandatory}}

| Generate a formatted message catalog

|

scope="row"| {{codett|get}}

| SCCS

| {{Optional}} (XSI)

| Get a version of an SCCS file

| PWB UNIX

scope="row"| getconf

| Misc

| {{needs|Mandatory}}

| Get configuration values

|

scope="row"| getopts

| Shell programming

| {{needs|Mandatory}}

| Parse utility options

|

scope="row"| gettext

| Misc

| {{needs|Mandatory}}

| Retrieve text string from messages object

|

scope="row"| grep

| Misc

| {{needs|Mandatory}}

| Search text for a pattern

| Version 4 AT&T UNIX

scope="row"| hash (Unix)

| Misc

| {{needs|Mandatory}}

| Hash database access method

|

scope="row"| head (Unix)

| Text processing

| {{needs|Mandatory}}

| Copy the first part of files

| PWB UNIX{{citation needed|date=May 2009}}

scope="row"| iconv

| Text processing

| {{needs|Mandatory}}

| Codeset conversion

| HP-UX

scope="row"| id (Unix)

| Misc

| {{needs|Mandatory}}

| Return user identity

| System V

scope="row"| ipcrm

| Misc

| {{Optional}} (XSI)

| Remove a message queue, semaphore set, or shared memory segment identifier

| System V

scope="row"| ipcs

| Misc

| {{Optional}} (XSI)

| Report interprocess communication facilities status

| System V

scope="row"| {{codett|jobs}}

| Process management

| {{Optional}} (UP)

| Display status of jobs in the current session

|

scope="row"| join (Unix)

| Text processing

| {{needs|Mandatory}}

| Merges two sorted text files based on the presence of a common field

| Version 7 AT&T UNIX

scope="row"| kill (command)

| Process management

| {{needs|Mandatory}}

| Terminate or signal processes

| Version 4 AT&T UNIX

scope="row"| lex programming tool

| C programming

| {{Optional}} (CD)

| Generate programs for lexical tasks

| Version 7 AT&T UNIX

scope="row"| link (Unix)

| Filesystem

| {{Optional}} (XSI)

| Create a hard link to a file

| Version 1 AT&T UNIX

scope="row"| ln (Unix)

| Filesystem

| {{needs|Mandatory}}

| Link files

| Version 1 AT&T UNIX

scope="row"| {{codett|locale}}

| Misc

| {{needs|Mandatory}}

| Get locale-specific information

|

scope="row"| localedef

| Misc

| {{needs|Mandatory}}

| Define locale environment

|

scope="row"| {{codett|logger}}

| Shell programming

| {{needs|Mandatory}}

| Log messages

| 4.3BSD

scope="row"| logname

| Misc

| {{needs|Mandatory}}

| Return the user's login name

| 4.4BSD

scope="row"| lp (Unix)

| Text processing

| {{needs|Mandatory}}

| Send files to a printer

| System V

scope="row"| ls

| Filesystem

| {{needs|Mandatory}}

| List directory contents

| Version 1 AT&T UNIX

scope="row"| M4 (computer language)

| Misc

| {{needs|Mandatory}}

| Macro processor

| PWB UNIX

scope="row"| mailx

| Misc

| {{needs|Mandatory}}

| Process messages

| Version 1 AT&T UNIX

scope="row"| make (software)

| Programming

| {{Optional}} (SD)

| Maintain, update, and regenerate groups of programs

| PWB UNIX

scope="row"| man page

| Misc

| {{needs|Mandatory}}

| Display system documentation

| Version 2 AT&T UNIX

scope="row"| mesg

| Misc

| {{needs|Mandatory}}

| Permit or deny messages

| Version 1 AT&T UNIX

scope="row"| mkdir

| Filesystem

| {{needs|Mandatory}}

| Make directories

| Version 1 AT&T UNIX

scope="row"| mkfifo

| Filesystem

| {{needs|Mandatory}}

| Make FIFO special files

| 4.4BSD{{dubious|mkfifo|date=April 2014}}

scope="row"| more (command)

| Text processing

| {{Optional}} (UP)

| Display files on a page-by-page basis

| 3BSD

scope="row"| msgfmt

| Misc

| {{needs|Mandatory}}

| Create messages objects from messages object files

|

scope="row"| Mv (Unix)

| Filesystem

| {{needs|Mandatory}}

| Move or rename files

| Version 1 AT&T UNIX

scope="row"| newgrp

| Misc

| {{needs|Mandatory}}

| Change to a new group

| Version 6 AT&T UNIX

scope="row"| gettext

| Misc

| {{needs|Mandatory}}

| Retrieve text string from messages object with plural form

|

scope="row"| nice (Unix)

| Process management

| {{needs|Mandatory}}

| Invoke a utility with an altered nice value

| Version 4 AT&T UNIX

scope="row"| nl (Unix)

| Text processing

| {{Optional}} (XSI)

| Line numbering filter

| System III

scope="row"| nm (Unix)

| C programming

| {{Optional}}
(SD, XSI)

| Write the name list of an object file

| Version 1 AT&T UNIX

scope="row"| nohup

| Process management

| {{needs|Mandatory}}

| Invoke a utility immune to hangups

| Version 4 AT&T UNIX

scope="row"| od (Unix)

| Misc

| {{needs|Mandatory}}

| Dump files in various formats

| Version 1 AT&T UNIX

scope="row"| paste (Unix)

| Text processing

| {{needs|Mandatory}}

| Merge corresponding or subsequent lines of files

| Version 32V AT&T UNIX

scope="row"| patch (Unix)

| Text processing

| {{needs|Mandatory}}

| Apply changes to files

| 4.3BSD

scope="row"| pathchk

| Filesystem

| {{needs|Mandatory}}

| Check pathnames

|

scope="row"| pax (command)

| Misc

| {{needs|Mandatory}}

| Portable archive interchange

| 4.4BSD{{citation needed|date=December 2014}}

scope="row"| pr (Unix)

| Text processing

| {{needs|Mandatory}}

| Paginate or columnate files for printing

| Version 1 AT&T UNIX

scope="row"| printf (Unix)

| Shell programming

| {{needs|Mandatory}}

| Write formatted output

| 4.3BSD-Reno

scope="row"| {{codett|prs}}

| SCCS

| {{Optional}} (XSI)

| Print an SCCS file

| PWB UNIX

scope="row"| ps (Unix)

| Process management

| {{needs|Mandatory}}

| Report process status

| Version 4 AT&T UNIX

scope="row"| pwd

| Filesystem

| {{needs|Mandatory}}

| Print working directory

| Version 5 AT&T UNIX

scope="row"| read (Unix)

| Shell programming

| {{needs|Mandatory}}

| Read a line from standard input

|

scope="row"| readlink

| Filesystem

| {{needs|Mandatory}}

| Print destination of a symbolic link

|

scope="row"| {{codett|realpath}}

| Filesystem

| {{needs|Mandatory}}

| Resolve a symbolic link

|

scope="row"| renice

| Process management

| {{needs|Mandatory}}

| Set nice values of running processes

| 4BSD

scope="row"| rm (Unix)

| Filesystem

| {{needs|Mandatory}}

| Remove directory entries

| Version 1 AT&T UNIX

scope="row"| rmdel

| SCCS

| {{Optional}} (XSI)

| Remove a delta from an SCCS file

| PWB UNIX

scope="row"| rmdir

| Filesystem

| {{needs|Mandatory}}

| Remove directories, if they are empty.

| Version 1 AT&T UNIX

scope="row"| {{codett|sact}}

| SCCS

| {{Optional}} (XSI)

| Print current SCCS file-editing activity

| System III

scope="row"| Source Code Control System

| SCCS

| {{Optional}} (XSI)

| Front end for the SCCS subsystem

| 4.3BSD

scope="row"| sed

| Text processing

| {{needs|Mandatory}}

| Stream editor

| Version 7 AT&T UNIX

scope="row"| Bourne shell

| Shell programming

| {{needs|Mandatory}}

| Shell, the standard command language interpreter

| Version 7 AT&T UNIX
(in earlier versions, sh was either the Thompson shell or the PWB shell)

scope="row"| sleep (command)

| Shell programming

| {{needs|Mandatory}}

| Suspend execution for an interval

| Version 4 AT&T UNIX

scope="row"| sort (Unix)

| Text processing

| {{needs|Mandatory}}

| Sort, merge, or sequence check text files

| Version 1 AT&T UNIX

scope="row"| split (Unix)

| Misc

| {{needs|Mandatory}}

| Split files into pieces

| Version 3 AT&T UNIX

scope="row"| strings (Unix)

| C programming

| {{needs|Mandatory}}

| Find printable strings in files

| 2BSD

scope="row"| strip (Unix)

| C programming

| {{Optional}} (SD)

| Remove unnecessary information from executable files

| Version 1 AT&T UNIX

scope="row"| {{codett|stty}}

| Misc

| {{needs|Mandatory}}

| Set the options for a terminal

| Version 2 AT&T UNIX

scope="row"| {{codett|tabs}}

| Misc

| {{needs|Mandatory}}

| Set terminal tabs

| PWB UNIX

scope="row"| tail (Unix)

| Text processing

| {{needs|Mandatory}}

| Copy the last part of a file

| PWB UNIX{{citation needed|date=May 2009}}

scope="row"| talk (software)

| Misc

| {{Optional}} (UP)

| Talk to another user

| 4.2BSD

scope="row"| tee (command)

| Shell programming

| {{needs|Mandatory}}

| Duplicate the standard output

| Version 5 AT&T UNIX

scope="row"| test (Unix)

| Shell programming

| {{needs|Mandatory}}

| Evaluate expression

| Version 7 AT&T UNIX

scope="row"| time (Unix)

| Process management

| {{needs|Mandatory}}

| Display elapsed, system and kernel time used by the current shell or designated process.

| Version 3 AT&T UNIX{{cite web |author= |date=July 7, 202 |title=FreeBSD Manual Pages: time |url=https://man.freebsd.org/cgi/man.cgi?query=time |website=man.freebsd.org|access-date=Mar 23, 2025}}

scope="row"| {{codett|timeout}}

| Process management

| {{needs|Mandatory}}

| Run command with a time limit

| Version 3 AT&T UNIX

scope="row"| touch (command)

| Filesystem

| {{needs|Mandatory}}

| Change file access and modification times

| Version 7 AT&T UNIX

scope="row"| tput

| Misc

| {{needs|Mandatory}}

| Change terminal characteristics

| System V

scope="row"| tr (Unix)

| Text processing

| {{needs|Mandatory}}

| Translate characters

| Version 4 AT&T UNIX

scope="row"| true (Unix)

| Shell programming

| {{needs|Mandatory}}

| Return true value

| Version 7 AT&T UNIX

scope="row"| tsort (Unix)

| Text processing

| {{needs|Mandatory}}

| Topological sort

| Version 7 AT&T UNIX

scope="row"| tty (unix)

| Misc

| {{needs|Mandatory}}

| Return user's terminal name

| Version 1 AT&T UNIX

scope="row"| type (Unix)

| Misc

| {{Optional}} (XSI)

| Displays how a name would be interpreted if used as a command

|

scope="row"| {{codett|ulimit}}

| Misc

| {{Optional}} (XSI)

| Set or report file size limit

|

scope="row"| umask

| Misc

| {{needs|Mandatory}}

| Get or set the file mode creation mask

| System III

scope="row"| unalias

| Misc

| {{needs|Mandatory}}

| Remove alias definitions

|

scope="row"| uname

| Misc

| {{needs|Mandatory}}

| Return system name

| PWB UNIX

scope="row"| uncompress

| Misc

| {{Optional}} (XSI)

| Expand compressed data

| 4.3BSD

scope="row"| unexpand

| Text processing

| {{needs|Mandatory}}

| Convert spaces to tabs

| 3BSD

scope="row"| {{codett|unget}}

| SCCS

| {{Optional}} (XSI)

| Undo a previous get of an SCCS file

| System III

scope="row"| uniq

| Text processing

| {{needs|Mandatory}}

| Report or filter out repeated lines in a file

| Version 3 AT&T UNIX

scope="row"| unlink (Unix)

| Filesystem

| {{Optional}} (XSI)

| Call the unlink function

| Version 1 AT&T UNIX

scope="row"| uucp

| Network

| {{Optional}} (UU)

| System-to-system copy

| Version 7 AT&T UNIX

scope="row"| uudecode

| Network

| {{needs|Mandatory}}

| Decode a binary file

| 4BSD

scope="row"| uuencode

| Network

| {{needs|Mandatory}}

| Encode a binary file

| 4BSD

scope="row"| uustat

| Network

| {{Optional}} (UU)

| uucp status inquiry and job control

| System III

scope="row"| {{codett|uux}}

| Process management

| {{Optional}} (UU)

| Remote command execution

| Version 7 AT&T UNIX

scope="row"| {{codett|val}}

| SCCS

| {{Optional}} (XSI)

| Validate SCCS files

| System III

scope="row"| Vi (text editor)

| Text processing

| {{Optional}} (UP)

| Screen-oriented (visual) display editor

| 1BSD

scope="row"| wait (command)

| Process management

| {{needs|Mandatory}}

| Await process completion

| Version 4 AT&T UNIX

scope="row"| wc (Unix)

| Text processing

| {{needs|Mandatory}}

| Line, word and byte or character count

| Version 1 AT&T UNIX

scope="row"| {{codett|what}}

| SCCS

| {{Optional}} (XSI)

| Identify SCCS files

| PWB UNIX

scope="row"| who (Unix)

| System administration

| {{Optional}} (XSI)

| Display who is on the system

| Version 1 AT&T UNIX

scope="row"| write (Unix)

| Misc

| {{needs|Mandatory}}

| Write to another user's terminal

| Version 1 AT&T UNIX

scope="row"| xargs

| Shell programming

| {{needs|Mandatory}}

| Construct argument lists and invoke utility

| PWB UNIX

scope="row"| gettext

| C programming

| {{Optional}} (CD)

| Extract gettext calls from C source code strings

| IEEE Std 1003.1-2024

scope="row"| yacc

| C programming

| {{Optional}} (CD)

| Yet another compiler compiler

| PWB UNIX

scope="row"| zcat

| Text processing

| {{Optional}} (XSI)

| Expand and concatenate data

| 4.3BSD

See also

References

{{Reflist}}