- Article pages now have a discussion option at the bottom (moderated/captcha, but no registration needed)

Bash Hackers Wiki Frontpage

The Bash-Hackers Wiki This wiki is intended to hold documentations of any kind about the GNU Bash. The main motivation was to provide human-readable documentation and information to not force users to read every bit of the Bash manpage - which is hard sometimes. However, these docs here are not meant as newbie tutorial.

What would YOU like to see here? (outdated and locked, please use the discussions)

Stranger! Feel free to register and edit the contents. There is a Bash Hackers Wiki needs love page that lists some things to do. The registration is only there to prevent SPAM.

Scripting and general information

Code snipplets

How to....

Bash syntax and operations

Builtin Commands

This is a selection of builtin commands and command-like keywords, loosely arranged by their common uses. These are provided directly by the shell, rather than invoked as standalone external commands.

Declaration commands
Commands that set and query attributes/types, and manipulate simple datastructures.
Alt Type
declareDisplay or set shell variables or functions along with attributes. typeset builtin
exportDisplay or set shell variables, also giving them the export attribute. - special builtin
evalA common misspelling of "evil" - special builtin
localDeclare variables as having function local scope. - builtin
readonlyMark variables or functions as read-only. declare -r special builtin
unsetUnset variables and functions. - special builtin
shiftShift positional parameters - special builtin
Commands for reading/parsing input, or producing/formatting output of standard streams.
Alt Type
coprocCo-processes: Run a compound command in the background with async I/O. - keyword
echoCreate output from args. - builtin
mapfileCreate arrays from lines of input readarray builtin
printf"advanced echo." - builtin
readBuild variables or arrays from input streams. - builtin
Configuration and Debugging
Commands that modify shell behavior, change special options, assist in debugging.
Alt Type
callerIdentify/print execution frames. - builtin
setControl positional parameters and shell behaviour. - special builtin
shoptset/get shell options. - builtin
Control flow and data processing
Commands that operate on data and/or affect control flow.
Alt Type
colon"true" null command true special builtin
dotSource external files source special builtin
falseFail at doing nothing - builtin
continue / breakcontinue with or break out of loops. - special builtin
letArithmetic evaluation - an old fashioned way. - builtin
returnBreak out of a function, returning the specified exit status. - special builtin
[The classic test command. test builtin
Process and Job control
Commands related to jobs, signals, process groups, subshells.
Alt Type
execReplace the shell, set redirections. - special builtin
exitExit the shell. - special builtin
trapSet traps. - special builtin
timesDisplay process times. - special builtin
waitWait for background jobs and asynchronous lists. - builtin
History, programmable completion, directory stack.
Alt Type

previous alphabetical version

calleridentify/print execution frames (Bash builtin)
coprocCo-processes (Bash keyword)
declaredisplay or set shell variables or functions along with attributes (Bash builtin, synonym: typeset)
exec replace the shell, set redirections (Bash builtin)
letarithmetic evaluation - an old fashioned way (Bash builtin)
mapfileMapping lines of input to an array, also named readarray (Bash builtin)
printf"advanced echo" (Bash builtin)
readgetting input from stdin (Bash builtin)
readonlymark variables or functions as read-only (Bash builtin)
setcontrol positional parameters and shell behaviour (Bash builtin)
shoptset/get shell options (Bash builtin)
testthe classic test command (Bash builtin)
unsetunset variables and functions (Bash builtin)


A list of expressions and words and their meaning is here.


Official Bash links

Recommended Shell resources

Man Pages

Assorted interesting links

Bash Libraries (needs review)

Most wanted

Statistics for Month: April 2012
Rank Views Article
1 6833Small getopts tutorial (March: 11663)
2 4025The printf command (March: 7079)
3 2861Quotes and escaping (March: 5730)
4 2854The classic test command (March: 6145)
5 2222Parameter expansion (March: 4540)
6 1760Handling positional parameters (March: 3591)
7 1249Bash 4 - a rough overview (March: –)
8 1212Editing files with the ed text editor from scripts (March: 2727)
9 1205The read builtin command (March: –)
10 1182Lock your script (against parallel run) (March: –)
  • "Total visits": 35144
  • The overall "start" page is not counted


Visit us in irc.freenode.net, channel #bash ;-)

If you have critiques or suggestions, please feel free to send a mail using the contact form on the right. If you have quick suggestions, you can also use the Wishlist (editable by everyone!). Note that there is a discussion platform below every article page.

Please also see the imprint if you have problems with the site and its contents (legality, …)!

It also would be nice to drop a line when

  • it helped you
  • it didn't help you (something missing / unclear)
  • you like it
  • you don't like it
  • you found mistakes / bugs

Simply: Reader's feedback

Your Name :
Your Email :
Message :
Enter 'HUMAN' :

start.txt · Last modified: 2013/08/28 19:52 by chilicuil
GNU Free Documentation License 1.3
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0