setvar1
Index of freebsd shell built-in commands
Part of alias(1).
Overview
This page provides an index of builtin commands, keywords, and keyboard bindings provided by csh(1) and sh(1), the command line interpreters which comprise the BSD user environment.
Commands
Below is a table which lists builtin commands and keywords, whether they exist as standalone utilities, and the standard shells that provide them.
| Command | Standalone | csh(1) | sh(1) |
| ! | No | No | Yes |
| % | No | Yes | No |
| . | No | No | Yes |
| : | No | Yes | Yes |
| @ | No | Yes | No |
| [ | Yes | No | Yes |
| { | No | No | Yes |
| } | No | No | Yes |
| alias | No | Yes | Yes |
| alloc | No | Yes | No |
| bg | No | Yes | Yes |
| bind | No | No | Yes |
| bindkey | No | Yes | No |
| break | No | Yes | Yes |
| breaksw | No | Yes | No |
| builtin | No | No | Yes |
| builtins | No | Yes | No |
| case | No | Yes | Yes |
| cd | No | Yes | Yes |
| chdir | No | Yes | Yes |
| command | No | No | Yes |
| complete | No | Yes | No |
| continue | No | Yes | Yes |
| default | No | Yes | No |
| dirs | No | Yes | No |
| do | No | No | Yes |
| done | No | No | Yes |
| echo | Yes | Yes | Yes |
| echotc | No | Yes | No |
| elif | No | No | Yes |
| else | No | Yes | Yes |
| end | No | Yes | No |
| endif | No | Yes | No |
| endsw | No | Yes | No |
| esac | No | No | Yes |
| eval | No | Yes | Yes |
| exec | No | Yes | Yes |
| exit | No | Yes | Yes |
| export | No | No | Yes |
| false | Yes | No | Yes |
| fc | No | No | Yes |
| fg | No | Yes | Yes |
| fi | No | No | Yes |
| filetest | No | Yes | No |
| for | No | No | Yes |
| foreach | No | Yes | No |
| getopts | No | No | Yes |
| glob | No | Yes | No |
| goto | No | Yes | No |
| hash | No | No | Yes |
| hashstat | No | Yes | No |
| history | No | Yes | No |
| hup | No | Yes | No |
| if | No | Yes | Yes |
| jobid | No | No | Yes |
| jobs | No | Yes | Yes |
| kill | Yes | Yes | Yes |
| limit | No | Yes | No |
| local | No | No | Yes |
| log | No | Yes | No |
| login | Yes | Yes | No |
| logout | No | Yes | No |
| ls-F | No | Yes | No |
| nice | Yes | Yes | No |
| nohup | Yes | Yes | No |
| notify | No | Yes | No |
| onintr | No | Yes | No |
| popd | No | Yes | No |
| printenv | Yes | Yes | No |
| printf | Yes | No | Yes |
| pushd | No | Yes | No |
| pwd | Yes | No | Yes |
| read | No | No | Yes |
| readonly | No | No | Yes |
| rehash | No | Yes | No |
| repeat | No | Yes | No |
| return | No | No | Yes |
| sched | No | Yes | No |
| set | No | Yes | Yes |
| setenv | No | Yes | No |
| settc | No | Yes | No |
| setty | No | Yes | No |
| setvar | No | No | Yes |
| shift | No | Yes | Yes |
| source | No | Yes | No |
| stop | No | Yes | No |
| suspend | No | Yes | No |
| switch | No | Yes | No |
| telltc | No | Yes | No |
| test | Yes | No | Yes |
| then | No | No | Yes |
| time | Yes | Yes | No |
| times | No | No | Yes |
| trap | No | No | Yes |
| true | Yes | No | Yes |
| type | No | No | Yes |
| ulimit | No | No | Yes |
| umask | No | Yes | Yes |
| unalias | No | Yes | Yes |
| uncomplete | No | Yes | No |
| unhash | No | Yes | No |
| unlimit | No | Yes | No |
| unset | No | Yes | Yes |
| unsetenv | No | Yes | No |
| until | No | No | Yes |
| wait | No | Yes | Yes |
| where | No | Yes | No |
| which | Yes | Yes | No |
| while | No | Yes | Yes |
Keybinds
The command line environment also provides the following default keyboard bindings:
| Signal | csh(1) | sh(1) |
| Backspace | ^H | ^H |
| Carriage Return | ^M | ^J | ^M | ^J |
| Tab | ^I | ^I |
| Beginning of Line | ^A | ^A |
| End of Line | ^E | ^E |
| Cursor Forward | ^F | ^F |
| Cursor Backward | ^B | ^B |
| Clear Screen | ^L | ^L |
| Cut Line | ^U | ^U |
| Cut Word Backwards | ^W | ^W |
| Cut Rest of Line | ^K | ^K |
| Paste Last Cut | ^Y | ^Y |
| Typo | ^T | ^T |
| End of File (EOF) | ^D | ^D |
| Interupt (SIGINT) | ^C | ^C |
| Process info (SIGINFO) | ^T | ^T |
| Search History | No | ^R |
| Exit Search History | No | ^G |
| Previous Command | ^P | ^P |
| Next Command | ^N | ^N |
| Print Next Character | ^V | ^V |
| Pause Job | ^S | ^S |
| Resume Job | ^Q | ^Q |
| Suspend Job (SIGTSTP) | ^Z | ^Z |
| Scrollback Mode | ScrLk* | ScrLk* |
*: Bindings marked ‘*’ are provided by vt(4), the console driver.
Caveats
While builtin commands may exist in more than one shell or standalone, each may be implemented differently.
Standalone utilities and their manuals must be called by their path from a shell with a builtin command of the same name.
History
- FreeBSD 16.0-CURRENT (2026-10-27): the text shown here
- FreeBSD 15.1-RELEASE
- FreeBSD 15.0-RELEASE to FreeBSD 14.4-RELEASE
- FreeBSD 14.3-RELEASE to FreeBSD 13.3-RELEASE
- FreeBSD 13.2-RELEASE to FreeBSD 13.0-RELEASE
- FreeBSD 12.4-RELEASE
- FreeBSD 12.3-RELEASE
- FreeBSD 12.2-RELEASE
- FreeBSD 12.1-RELEASE
- FreeBSD 12.0-RELEASE
- FreeBSD 11.4-RELEASE
- FreeBSD 11.3-RELEASE
- FreeBSD 11.2-RELEASE
- FreeBSD 11.1-RELEASE
- FreeBSD 11.0-RELEASE
- FreeBSD 10.4-RELEASE
- FreeBSD 10.3-RELEASE
- FreeBSD 10.2-RELEASE
- FreeBSD 10.1-RELEASE
- FreeBSD 10.0-RELEASE
- FreeBSD 9.3-RELEASE
- FreeBSD 9.2-RELEASE
- FreeBSD 9.1-RELEASE
- FreeBSD 9.0-RELEASE
- FreeBSD 8.4-RELEASE
- FreeBSD 8.3-RELEASE
- FreeBSD 8.2-RELEASE
- FreeBSD 8.1-RELEASE
- FreeBSD 8.0-RELEASE
- FreeBSD 7.4-RELEASE
- FreeBSD 7.3-RELEASE
- FreeBSD 7.2-RELEASE
- FreeBSD 7.1-RELEASE
- FreeBSD 7.0-RELEASE
- FreeBSD 6.4-RELEASE
- FreeBSD 6.3-RELEASE to FreeBSD 6.2-RELEASE
- FreeBSD 6.1-RELEASE to FreeBSD 6.0-RELEASE
- FreeBSD 5.5-RELEASE
- FreeBSD 5.4-RELEASE
- FreeBSD 5.3-RELEASE to FreeBSD 5.0-RELEASE
- FreeBSD 4.11-RELEASE to FreeBSD 4.5-RELEASE
- FreeBSD 4.4-RELEASE
- FreeBSD 4.3-RELEASE
- FreeBSD 4.2-RELEASE to FreeBSD 4.1-RELEASE
- FreeBSD 4.0-RELEASE
- FreeBSD 3.5.1-RELEASE to FreeBSD 3.5-RELEASE
- FreeBSD 3.4-RELEASE