BASH(1) General Commands Manual BASH(1) (NAME) bash - (GNU Bourne-Again SHell) (SYNOPSIS) bash [options] [command_string | file] (COPYRIGHT) Bash is Copyright (C) 1989-2025 by the Free Software Foundation, Inc. (DESCRIPTION) Bash . Bourne . Bash Korn C (ksh csh) . POSIX . Bash POSIX IEEE ( IEEE 1003.1) . POSIX Bash ( posix mode ) . posix bash (SEE ALSO) . Bash POSIX- . (OPTIONS) set -o . bash : -c -c command_string . command_string $0 . $0 . -i -i (interactive) . -l bash (login shell) ( (INVOCATION) ). -r -r (restricted) ( (RESTRICTED SHELL) ). -s -s . . -D (double-quoted) $ . (locale) C POSIX . -n . [-+]O [shopt_option] shopt_option shopt ( (SHELL BUILTIN COMMANDS) ). shopt_option -O () +O () . shopt_option bash shopt . +O . -- -- . -- ( ) . - -- . Bash () . . --debugger () (debugger) . ( extdebug shopt ). --dump-po-strings -D "po" ( portable object) gettext . --dump-strings -D . --help . --init-file file --rcfile file file ~/.bashrc ( (INVOCATION) ). --login -l . --noediting readline . --noprofile /etc/profile ~/.bash_profile ~/.bash_login ~/.profile . bash (login shell) ( (INVOCATION) ). --norc ~/.bashrc . sh . --posix posix bash POSIX . --restricted ( (RESTRICTED SHELL) ). --verbose -v . --version bash . (ARGUMENTS) -c -s ( shell script) . bash $0 . Bash . Bash . 0 . Bash PATH . (INVOCATION) (login shell) - --login . (interactive shell) ( -s ) -c ( isatty(3) ) -i . Bash PS1 $- i . bash . bash . (Tilde) (Tilde Expansion) (EXPANSION) . bash (login shell) --login /etc/profile . ~/.bash_profile ~/.bash_login ~/.profile . --noprofile . exit bash ~/.bash_logout . bash ~/.bashrc . --norc . --rcfile file bash ~/.bashrc file . bash BASH_ENV . Bash : if [ -n "$BASH_ENV" ]; then . "$BASH_ENV"; fi PATH . bash sh sh POSIX . --login /etc/profile ~/.profile . --noprofile . sh bash ENV . sh --rcfile . sh . sh bash posix . bash posix --posix POSIX . ENV . . Bash rshd sshd . bash ~/.bashrc . Bash sh . --norc --rcfile bash ~/.bashrc rshd sshd . () () -p SHELLOPTS BASHOPTS CDPATH GLOBIGNORE . -p . (DEFINITIONS) . blank (space) (tab). whitespace space isspace(3) . word . token () . name word - (underscore) . identifier () . metacharacter . : | & ; ( ) < > space tab newline (control operator) (token) . : || & && ; ;; ;& ;;& ( ) | |& (RESERVED WORDS) . ( (SHELL GRAMMAR) ) case select ( in ) for ( in do ) : ! case coproc do done elif else esac fi for function if in select then until while { } time [[ ]] (SHELL GRAMMAR) . (Simple Commands) dest (simple command) (blank) . . . 128+n n . (Pipelines) (pipeline) | |& . : [time [-p]] [ ! ] command1 [ [|||&] command2 ... ] command1 (pipe) command2 . command1 ( (REDIRECTION) ). |& command1 command2 2>&1 | . command1 . pipefail . pipefail () . ! . . time . -p POSIX . posix "-" time . TIMEFORMAT TIMEFORMAT (Shell Variables) . posix time . . TIMEFORMAT . subshell () . (COMMAND EXECUTION ENVIRONMENT) . lastpipe shopt ( shopt ) . (Lists) list () ; & && || ; & . && || ; & . list (semicolon) . & . 0 . (asynchronous) . ; . . AND OR && || . AND OR . AND : command1 && command2 command2 command1 () . OR : command1 || command2 command2 command1 . AND OR . (Compound Commands) compound command ( ) . list . (list) list (subshell) ( (COMMAND EXECUTION ENVIRONMENT) ). . list . { list; } list . list . group command ( ) . list . (metacharacters) ( ) { } (reserved words) . (word break) list . ((expression)) expression (ARITHMETIC EVALUATION) . 0 1 . expression expression . 0 . [[ expression ]] expression (true) (false) . (primaries) (CONDITIONAL EXPRESSIONS) . [[ ]] (word splitting) (pathname expansion) . . -f . [[ < > (current locale) . == != (Pattern Matching) extglob . = == . nocasematch . (==) (!=) 0 1 . : . =~ == != . POSIX (extended regular expression) ( POSIX regcomp regexec regex(3) ). 0 1 . 2 . nocasematch . (literally) . . (bracket expressions) . . ^ $ (anchor) . BASH_REMATCH . BASH_REMATCH 0 . BASH_REMATCH . BASH_REMATCH n n . Bash BASH_REMATCH (global scope) (local) . : ( expression ) expression . . ! expression expression . expression1 && expression2 expression1 expression2 . expression1 || expression2 expression1 expression2 . && || expression1 expression2 . for name [ [ in word ... ] ; ] do list ; done in . name list . in word for list ( (PARAMETERS) ). . in 0 . for (( expr1 ; expr2 ; expr3 )) [;] do list ; done expr1 (ARITHMETIC EVALUATION) . expr2 . expr2 list expr3 . . list . break continue ( (SHELL BUILTIN COMMANDS) ) . select name [ in word ] ; do list ; done in . in word ( (PARAMETERS) ). select PS3 . select name . select . EOF select 1 . name (null) . REPLY . list break . select list . case word in [ [(] pattern [ | pattern ] ... ) list ;; ] ... esac case word pattern Pattern Matching . ) . word . pattern . nocasematch . clause list . case list . ;; case case . ;& ;; list . ;;& ;; ( ) list case . . list . if list; then list; [ elif list; then list; ] ... [ else list; ] fi if list . then list . elif list then list . else list ( ) . . while list-1; do list-2; done until list-1; do list-2; done while list-1 list-2 . until while : list-2 list-1 . while until list-2 . (Coprocesses) (coprocess) coproc . (subshell) & . : coproc [NAME] command [redirections] NAME . command ( ). NAME . NAME COPROC . (coprocess) coproc NAME { command [redirections]; } COPROC . command NAME . coproc : NAME . command NAME NAME . ( (Arrays) ) NAME . command (pipe) NAME[0] . command NAME[1] . ( (REDIRECTION) ). . (subshells) . (PID) NAME_PID . wait . (asynchronous) coproc . command . (Shell Function Definitions) . : fname () compound-command [redirection] function fname [()] compound-command [redirection] fname . function . function . compound-command ( (Compound Commands) ). { } . function . compound-command fname . posix fname name POSIX . $ . ( (REDIRECTION) ) . (syntax error) . . ( (FUNCTIONS) .) (COMMENTS) interactive_comments shopt ( (SHELL BUILTIN COMMANDS) ) # () . . . interactive_comments . interactive_comments . (QUOTING) (Quoting) . . (metacharacters) (DEFINITIONS) . ( (HISTORY EXPANSION) ) ! . : (escape character) (single quotes) (double quotes) - (dollar-single quotes). (\) . . \ \ ( ). . . $ ` \ !. posix ! . $ ` . : $ ` " \ . . . ! . ! . * @ (double quotes) ( (PARAMETERS) ). $'string' (single quotes) . string (backslash-escaped) string ANSI C . : \a (alert/bell) \b (backspace) \e \E (escape character) \f (form feed) \n (new line) \r (carriage return) \t (horizontal tab) \v (vertical tab) \\ (backslash) \' (single quote) \" (double quote) \? (question mark) \nnn nnn ( ). \xHH HH ( ). \uHHHH (ISO/IEC 10646) HHHH ( ). \UHHHHHHHH (ISO/IEC 10646) HHHHHHHH ( ). \cx -x. . ($"string") (locale) . gettext LC_MESSAGES TEXTDOMAINDIR TEXTDOMAIN . C POSIX . . noexpand_translation shopt . shopt (SHELL BUILTIN COMMANDS) . (PARAMETERS) parameter () . name (Special Parameters) . variable () name . value () attribute () . declare ( declare (SHELL BUILTIN COMMANDS) ). export readonly . (set) . (null string) . unset (unset) ( (SHELL BUILTIN COMMANDS) ). variable : name=[value] value . value (tilde expansion) ( (EXPANSION) ). integer value $((...)) ( (Arithmetic Expansion) ). (pathname expansion) . alias declare typeset export readonly local ( declaration ). posix command . "+=" . declaration declare . "+=" integer value . . "+=" ( (Arrays) ) (unset) ( "=" ) ( ) - (associative) . value . -n declare local nameref ( declare local ) nameref . . nameref (unset) ( nameref) nameref . nameref . declare -n ref=$1 nameref ref . ref $1 . for nameref . nameref . nameref . nameref -n unset . unset nameref nameref . ( ENVIRONMENT). (Positional Parameters) 0 . set . . ( FUNCTIONS ). ( EXPANSION ). $ ($1-$9) $0 ( ). (Special Parameters) . . . * ($*) . ( ) . . IFS . "$*" "$1c$2c..." c IFS . IFS (unset) (space) . IFS (null) . @ ($@) (positional parameters) . (word splitting) (double quotes) . (assignment statement) (space) . . "$@" "$1" "$2" ... . "$@" $@ ( ). # ($#) (decimal) . ? ($?) (exit status) . - ($-) set ( -i) . $ ($$) (process ID) . (subshell) . ! ($!) (asynchronous) bg ( (JOB CONTROL) ). 0 ($0) . . bash $0 . bash -c $0 . bash . : _ ($_ underscore) . _ . . (exported environment) . $_ . BASH bash . BASHOPTS . -s shopt ( (SHELL BUILTIN COMMANDS) ). BASHOPTS shopt on . bash . (export) . . BASHPID (PID) bash . $$ bash . BASHPID . BASHPID (unset) . BASH_ALIASES alias . . BASH_ALIASES . BASH_ARGC bash . ( . source) . BASH_ARGC (push) . BASH_ARGC ( extdebug shopt ). extdebug extdebug . BASH_ARGC (unset) . BASH_ARGV bash . . BASH_ARGV (push ). BASH_ARGV ( extdebug shopt ). extdebug extdebug . BASH_ARGV (unset) . BASH_ARGV0 ( $0 0 ). BASH_ARGV0 $0 . BASH_ARGV0 (unset) . BASH_CMDS (hash table) hash . . BASH_CMDS (unset) . BASH_COMMAND (trap) . BASH_COMMAND (unset) . BASH_EXECUTION_STRING -c. BASH_LINENO FUNCNAME . ${BASH_LINENO[$i]} (${BASH_SOURCE[$i+1]}) ${FUNCNAME[$i]} ( ${BASH_LINENO[$i-1]}). LINENO . BASH_LINENO (unset) . BASH_LOADABLES_PATH (colon- separated) enable . BASH_MONOSECONDS (monotonic clock) . EPOCHSECONDS . BASH_MONOSECONDS (unset) . BASH_REMATCH =~ [[ . 0 (regular expression) . n n . BASH_SOURCE FUNCNAME . ${FUNCNAME[$i]} ${BASH_SOURCE[$i]} ${BASH_SOURCE[$i+1]} . BASH_SOURCE (unset) . BASH_SUBSHELL (subshell) . 0 . BASH_SUBSHELL (unset) . BASH_TRAPSIG trap . trap trap (SHELL BUILTIN COMMANDS) . BASH_VERSINFO bash . : BASH_VERSINFO[0] ( release). BASH_VERSINFO[1] (version). BASH_VERSINFO[2] (patch level). BASH_VERSINFO[3] (build version). BASH_VERSINFO[4] ( beta). BASH_VERSINFO[5] MACHTYPE. BASH_VERSION bash ( 5.2.37(3)-release). COMP_CWORD ${COMP_WORDS} . ( (Programmable Completion) ). COMP_KEY ( ) . ( (Programmable Completion) ). COMP_LINE . ( (Programmable Completion) ). COMP_POINT . ${#COMP_LINE} . ( (Programmable Completion) ). COMP_TYPE : TAB ? Tab ! @ % . ( (Programmable Completion) ). COMP_WORDBREAKS readline . COMP_WORDBREAKS (unset ) . COMP_WORDS ( (Arrays) ) . readline COMP_WORDBREAKS ( ) . ( (Programmable Completion) ). COPROC ( (Arrays) ) (coprocess) ( (Coprocesses) ). DIRSTACK ( (Arrays) ) . dirs . pushd popd . . DIRSTACK (unset ) . EPOCHREALTIME (Unix Epoch) ( time(3) ) . EPOCHREALTIME . EPOCHREALTIME (unset ) . EPOCHSECONDS (Unix Epoch) ( time(3) ) . EPOCHSECONDS . EPOCHSECONDS (unset ) . EUID (effective user ID) . . FUNCNAME . 0 . ( ) "main" . . FUNCNAME . FUNCNAME (unset ) . BASH_LINENO BASH_SOURCE . FUNCNAME BASH_LINENO BASH_SOURCE . ${FUNCNAME[$i]} ${BASH_SOURCE[$i+1]} ${BASH_LINENO[$i]} . caller . GROUPS . GROUPS . GROUPS (unset) . HISTCMD . HISTCMD . HISTCMD (unset) . HOSTNAME . HOSTTYPE bash . . LINENO ( ) . . LINENO (unset) . MACHTYPE bash cpu- company-system . . MAPFILE ( (Arrays) ) mapfile . OLDPWD cd . OPTARG getopts ( (SHELL BUILTIN COMMANDS) ). OPTIND getopts ( (SHELL BUILTIN COMMANDS) ). OSTYPE bash . . PIPESTATUS ( (Arrays) ) (pipeline) ( (SHELL GRAMMAR) ). Bash PIPESTATUS ( [[ (( . PPID (PID) . . PWD cd . RANDOM 0 32767 . RANDOM () . . RANDOM (unset) . READLINE_ARGUMENT readline "bind -x" ( (SHELL BUILTIN COMMANDS) ) . READLINE_LINE readline "bind -x" ( (SHELL BUILTIN COMMANDS) ). READLINE_MARK ( ) readline "bind -x" ( (SHELL BUILTIN COMMANDS) ). (region) . READLINE_POINT readline "bind -x" ( (SHELL BUILTIN COMMANDS) ). REPLY read . SECONDS . SECONDS . . SECONDS (unset) . SHELLOPTS (:) . -o set ( (SHELL BUILTIN COMMANDS) ). SHELLOPTS set -o on . bash . (export) . . SHLVL bash . SRANDOM . /dev/urandom arc4random(3) . (seed) . SRANDOM (unset) . UID . . . bash . BASH_COMPAT . (SHELL COMPATIBILITY MODE) . ( 4.2) ( 42) . BASH_COMPAT (unset) . BASH_COMPAT . (SHELL COMPATIBILITY MODE) . 4.2 42 compat42 shopt 42 . . BASH_ENV bash . BASH_ENV . PATH . BASH_XTRACEFD bash (trace) "set -x" . BASH_XTRACEFD (unset) . BASH_XTRACEFD . BASH_XTRACEFD 2 ( ) (unset) . CDPATH cd. cd . ".:~:/usr". CHILD_MAX . Bash POSIX ( ) . . COLUMNS select . checkwinsize SIGWINCH . COMPREPLY bash ( (Programmable Completion) ). . EMACS bash "t" Emacs . ENV posix BASH_ENV ( (INVOCATION) ) . EXECIGNORE ( (Pattern Matching) ) PATH . PATH . [ test [[ . EXECIGNORE . . extglob . FCEDIT fc. FIGNORE ( (READLINE) ). FIGNORE . ".o:~". FUNCNEST . . GLOBIGNORE (:) . GLOBIGNORE . extglob . GLOBSORT . . (null) LC_COLLATE . + - . name numeric size mtime atime ctime blocks inode . ( ) . -mtime ( ). numeric ( "2" "10" ). numeric . nosort bash - . name + - . . HISTCONTROL (:) . ignorespace (space) . ignoredups . ignoreboth ignorespace ignoredups . erasedups . . HISTCONTROL bash HISTIGNORE . HISTCONTROL . . HISTFILE ( HISTORY ). Bash ~/.bash_history . HISTFILE (unset) (null) . HISTFILESIZE . (truncate) . . history . 0 . . HISTSIZE . HISTIGNORE (:) . HISTIGNORE . (anchored) (bash "*" ). HISTCONTROL . "&" . (backslash) "&" (escape) . HISTIGNORE . . extglob . HISTIGNORE HISTCONTROL . "&" "ignoredups" "[ ]*" "ignorespace" . (:) "ignoreboth" . HISTSIZE ( HISTORY ). 0 . ( ). 500 . HISTTIMEFORMAT strftime(3) history . . . HOME cd. ( ) . HOSTFILE /etc/hosts . bash . HOSTFILE bash /etc/hosts . HOSTFILE (unset) bash . IFS (Internal Field Separator) read . (EXPANSION) . "" . IGNOREEOF EOF . EOF bash . . EOF . INPUTRC readline ~/.inputrc ( (READLINE) ). INSIDE_EMACS bash Emacs TERM . LANG (locale) LC_ . LC_ALL LANG LC_ () . LC_COLLATE (collation order) (pathname expansion) . LC_CTYPE . LC_MESSAGES (locale) (double-quoted) $ . LC_NUMERIC . LC_TIME . LINES select . checkwinsize SIGWINCH . MAIL MAILPATH bash Maildir . MAILCHECK ( ) bash . . (primary prompt) . . MAILPATH (colon) . "?" . $_ . : MAILPATH='/var/mail/bfox?"You have mail":~/shell-mail?"$_ has mail!"' Bash ( ) ( /var/mail/$USER). OPTERR bash getopts ( (SHELL BUILTIN COMMANDS) ). OPTERR . PATH . (:) ( (COMMAND EXECUTION) ). (/null) PATH . . bash . : /usr/local/bin:/usr/local/sbin: /usr/bin:/usr/sbin:/bin:/sbin POSIXLY_CORRECT bash posix --posix . bash posix "set -o posix" . posix . PROMPT_COMMAND . . PROMPT_DIRTRIM \w \W ( (PROMPTING) ). (...) . PS0 ( (PROMPTING) ) . PS1 ( (PROMPTING) ) . "\s-\v\$ ". . PS2 PS1 . "> ". . PS3 select ( (SHELL GRAMMAR) ). PS4 PS1 bash (execution trace) . PS4 . "+ ". . SHELL . bash . TIMEFORMAT time . % . . %% %. %[p][l]R . %[p][l]U CPU (user mode). %[p][l]S CPU (system mode). %P CPU (%U + %S) / %R. p (precision) . 0 . time p 6 6 . p time . l MMmSS.FFs . p . bash $'\nreal\t%3lR\nuser\t%3lU\nsys\t%3lS' . (null) bash . . TMOUT read (timeout) . select TMOUT . . Bash . TMPDIR bash bash . auto_resume (job control) . . . jobs . exact substring . substring %? ( (JOB CONTROL) ). ( prefix) %string . histchars () ( (HISTORY EXPANSION) ). "!" . "^" . . "#" () . . . (Arrays) Bash () . declare . . ( (ARITHMETIC EVALUATION) ) . . () . 0 . () . . Bash : name[subscript]=value . subscript . : declare -a name ( (SHELL BUILTIN COMMANDS) ). declare -a name[subscript] subscript . : declare -A name . () declare readonly . . name=(value1 ... valuen) value [subscript]=string . string . value EXPANSION value BeautifulSoup ( ) . . . : name=( key1 value1 key2 value2 ...). name=( [key1]=value1 [key2]=value2 ...) . . / . declare . name[subscript]=value . name name -1 . "+=" PARAMETERS . ${name[subscript]} . . subscript @ * name . ( ) . ${name[*]} IFS ${name[@]} name . ${name[@]} . . * @ ( Special Parameters ). ${#name[subscript]} ${name[subscript]} . subscript * @ . subscript (/) -1 . 0 . bash . (set) . . () . ${!name[@]} ${!name[*]} name . (double quotes) @ * . unset . unset name[subscript] subscript . . . unset name name . unset name[subscript] name subscript * @ . name * @ . name unset . unset ( unset a[4]) (pathname expansion) . ( unset 'a[4]'). declare local readonly -a -A . -A . read -a . set declare . ( mapfile) . . (EXPANSION) . : (brace expansion) (tilde expansion) (parameter and variable expansion) (command substitution) (arithmetic expansion) (word splitting) (pathname expansion) (quote removal). : (brace expansion) (tilde expansion) (parameter and variable expansion) (arithmetic expansion) (command substitution) ( ) (word splitting) (pathname expansion) (quote removal). : (process substitution). . (Quote removal) . . . "$@" "${name[@]}", $* ${name[*]} ( (PARAMETERS)). (Brace Expansion) (Brace expansion) . (pathname expansion) . (preamble) (sequence expression) (postscript) . . . (sort) . a{d,c,b}e "ade ace abe" . x..y[..incr] x y incr . x y . x y (zero-padding). (lexicographically) x y C . x y ( ) . (increment) . 1 -1 . . . Bash (syntactic interpretation) . . . "{" Q , . "${" "}" . : mkdir /usr/local/src/bash/{old,new,dist,bugs} chown root /usr/{ucb/{ex,edit},lib/{ex?.?*,how_ex}} sh . sh . Bash . sh "file{1,2}" . Bash "file1 file2" . sh bash +B +B set ( (SHELL BUILTIN COMMANDS) ). (Tilde Expansion) ("~") () ( ) tilde- prefix ( ) . login name ( ) . HOME . HOME . . "~+" PWD . "~-" OLDPWD . N "+" "-" dirs . "+" "-" "+" . . . Bash : = . PATH MAILPATH CDPATH . Bash ( PARAMETERS ) . Bash posix declaration . (Parameter Expansion) "$" . . "}" . : ${parameter} parameter . parameter parameter . parameter (PARAMETERS) (Arrays) . parameter (!) parameter nameref (indirection) . Bash parameter parameter parameter . (indirect expansion) . . parameter nameref parameter . ${!prefix*} ${!name[@]} . . word . ( :-) bash (unset) (null) . . ${parameter:-word} . parameter (null) word . parameter . ${parameter:=word} . parameter word parameter parameter . . ${parameter:?word} . parameter word ( word ) . . parameter . ${parameter:+word} . parameter word . parameter . ${parameter:offset} ${parameter:offset:length} B . length parameter offset . parameter @ * @ * . :length ( ) parameter offset . offset 0 . length offset 0 . length offset ( (ARITHMETIC EVALUATION) ). offset parameter . length parameter offset . :- . parameter @ * length offset . offset -1 ( 0). length . parameter @ * length ${parameter[offset]} . offset . length . (associative array) . 1 . offset 0 $0 . ${!prefix*} ${!prefix@} . prefix IFS . @ ( ) . ${!name[@]} ${!name[*]} . name () name . name name 0 (null) . @ . ${#parameter} . parameter . parameter * @ . parameter * @ . parameter parameter -1 . ${parameter#word} ${parameter##word} . word (Pattern Matching) parameter . parameter parameter ( "#" ) ( "##" ) . parameter @ * . parameter @ * . ${parameter%word} ${parameter%%word} . word (Pattern Matching) parameter . parameter parameter ( "%" ) ( "%%" ) . parameter @ * . parameter @ * . ${parameter/pattern/string} ${parameter//pattern/string} ${parameter/#pattern/string} ${parameter/%pattern/string} . pattern (Pattern Matching) parameter . pattern string . string (tilde expansion) . . parameter pattern ( ) pattern string . pattern # ( ) parameter . pattern % ( ) parameter . string (null) pattern / pattern . patsub_replacement shopt & string pattern . string . & string (escape) & (literal) . \\ . string (double quotes) . & string & & . . nocasematch . parameter @ * . parameter @ * . ${parameter^pattern} ${parameter^^pattern} ${parameter,pattern} ${parameter,,pattern} (Case modification). parameter . pattern (Pattern Matching) . Bash parameter pattern . / . . "^" pattern "," . ^ , pattern / ^^ ,, pattern . pattern ? . parameter @ * / . parameter @ * / . ${parameter@operator} (Parameter transformation). parameter parameter operator. operator : U parameter . u parameter . L parameter . Q parameter . E parameter $'...' . P parameter ( (PROMPTING) ). A declare parameter . K parameter - ( (Arrays) ). . a parameter . k K . parameter @ * . parameter @ * . . (Command Substitution) . : $(command) () `command`. Bash command (subshell) . . $(cat file) $(< file) . $ ` \ . . $(command) . : ${c command;} command . c | ( ). Bash - . command ( exit ). : return command . getUser | command REPLY command . Bash command REPLY command REPLY . . (backquote) (escape) . (double quotes) bash . (Arithmetic Expansion) . : $((expression)) expression expression . . . Bash . . (ARITHMETIC EVALUATION) . expression bash . (Process Substitution) . <(list) >(list) . list . . >(list) list . <(list) list . < > . (FIFOs) /dev/fd . . (Word Splitting) . . IFS . IFS ( ) IFS . (Space) (Tab) (Newline) IFS space (locale) . IFS IFS . IFS (null) ( ) . IFS . IFS IFS IFS IFS . IFS IFS IFS IFS . IFS . IFS . ("" '') . . (double quotes) . . "-d''" "-d" . (Pathname Expansion) -f bash * [ . (pattern) ( ) GLOBSORT . nullglob . nullglob . failglob bash . nocaseglob . "." dotglob . . .. "." ( ".?") dotglob . globskipdots . .. "." . "." . (Pattern Matching) . shopt (SHELL BUILTIN COMMANDS) nocaseglob nullglob globskipdots failglob dotglob . GLOBIGNORE pattern . GLOBIGNORE GLOBIGNORE . nocaseglob GLOBIGNORE . . .. GLOBIGNORE . GLOBIGNORE dotglob "." . "." ".*" GLOBIGNORE . dotglob GLOBIGNORE (unset) . GLOBIGNORE extglob . GLOBSORT (Shell Variables) . (Pattern Matching) . NUL . (backslash) (escape) . () . : * . globstar * * . / * . ? . [...] (brackets) . bracket expression ( ) . (hyphen) range expression ( ) (collating sequence) ( ) . [ ! ^ . - . ] . LC_COLLATE LC_ALL . [a-d] [abcd] LC_COLLATE LC_ALL C globasciiranges . (character classes) [:class:] class POSIX : alnum alpha ascii blank cntrl digit graph lower print punct space upper word xdigit . word _ . (equivalence class) [=c=] ( ) c . [.symbol.] symbol . extglob shopt . pattern-list | . : ?(pattern-list) . *(pattern-list) . +(pattern-list) . @(pattern-list) . !(pattern-list) . extglob (parser) . extglob . dotglob : dotglob "." . .. "." "." . globskipdots . .. . "." . (alternations) . . (Quote Removal) \ ' " . (REDIRECTION) . (file handles) . exec . . . {varname} . >&- <&- varname . {varname} >&- <&- varname . {varname} exec . varredir_close . (file descriptor) "<" ( 0) . ">" ( 1) . word (brace expansion) (tilde expansion) (parameter and variable expansion) (command substitution) (arithmetic expansion) (quote removal) (pathname expansion) (word splitting) . bash . . ls > dirlist 2>&1 dirlist ls 2>&1 > dirlist dirlist dirlist . Bash . bash bash . /dev/fd/fd fd fd . /dev/stdin 0 . /dev/stdout 1 . /dev/stderr 2 . /dev/tcp/host/port host port bash TCP . /dev/udp/host/port host port bash UDP . . 9 . (Redirecting Input) word n n ( 0) . : [n] (Redirecting Output) word n ( ) n . ( ). : [n]>word > noclobber set word . >| > noclobber set bash word . (Appending Redirected Output) word ( ) n ( ) n . . : [n]>>word (Redirecting Standard Output and Standard Error) ( ) ( ) word . : &>word >&word . : >word 2>&1 word - . ( (Duplicating File Descriptors) ). ( ) ( ) word . : &>>word : >>word 2>&1 ( (Duplicating File Descriptors) ). (Here Documents) delimiter ( ). ( n n ) . (here-documents) : [n]<<[-]word here-document delimiter word . word delimiter word . word delimiter word : \ \ \ $ ` . <<- delimiter . . (delimiter) \ : - . . (Here Strings) : [n]<< word . . ( n n) . [n]<&word . word n . word . word - n . n ( 0) . [n]>&word . n ( 1) . word . word - n . n word - . [n]<&digit- digit n ( 0) n . digit n . [n]>&digit- digit n ( 1) n . [n]<>word word n 0 n . . (ALIASES) Aliases ( ) . alias unalias ( (SHELL BUILTIN COMMANDS) ). . . . / $ ` = (metacharacters) . . . ls ls -F bash . blank ( ) . alias unalias . . ( (FUNCTIONS) ) . expand_aliases shopt ( shopt (SHELL BUILTIN COMMANDS) ). . Bash . . . . . . . alias . . (FUNCTIONS) (SHELL GRAMMAR) . . ( ). . # . 0 . FUNCNAME . : DEBUG RETURN ( trap (SHELL BUILTIN COMMANDS) ) trace ( declare ) -o functrace set ( DEBUG RETURN ) ERR -o errtrace . local (local variables). . local ( ) . current scope ( ) . "global" scope ( ) . local declare . ""(shadow) . : . . dynamic scoping ( ) . . ( ) . . var func1 func1 func2 var func2 var func1 var . unset : unset (unset) . ( ) . . ( localvar_unset ). FUNCNEST 0 . . return . return return . (trap) RETURN . # . -f declare typeset . -F declare typeset ( extdebug ). (export) ( ) -f export . -f unset . . FUNCNEST . bash . (ARITHMETIC EVALUATION) ( let declare (( for [[ (Arithmetic Expansion) ). 0 . C . . . id++ id-- ++id --id - + ! ~ ** * / % + - << >> <= >= < > == != & AND ^ OR (XOR) | OR && AND || OR expr?expr:expr = *= /= %= += -= <<= >>= &= ^= |= expr1 , expr2 . . "x" x . (null) 0 . declare -i integer ( ) . (null) 0 . integer . C . 0 () . 0x 0X () . [base#]n base 2 64 n . base# 10 . n 9 @ _ . base 36 10 35 . . . (CONDITIONAL EXPRESSIONS) [[ test [ . test [ . . . . Bash . bash bash : file /dev/fd/n bash n . file /dev/stdin /dev/stdout /dev/stderr bash 0 1 2 . . [[ posix < > (locale) . posix test ASCII . -a file file . -b file file . -c file file . -d file file . -e file file . -f file file (regular file) . -g file file set-group-id . -h file file . -k file file "sticky" . -p file file (FIFO) . -r file file . -s file file . -t fd fd . -u file file set-user-id . -w file file . -x file file . -G file file (effective group id) . -L file file (symbolic link) . -N file file . -O file file (effective user id) . -S file file . -o optname optname . -o set . -v varname varname ( ). varname () @ * . varname () @ * . -R varname varname (name reference) . -z string string . string -n string string . string1 == string2 string1 = string2 . = test POSIX . [[ ( (Compound Commands)) . string1 != string2 . string1 < string2 string1 string2 . string1 > string2 string1 string2 . file1 -ef file2 file1 file2 inode . file1 -nt file2 file1 ( ) file2 file1 file2 . file1 -ot file2 file1 file2 file2 file1 . arg1 OP arg2 OP -eq -ne -lt -le -gt -ge . (true) arg1 arg2 . arg1 arg2 . [[ arg1 arg2 ( (ARITHMETIC EVALUATION) ). [[ arg1 arg2 0 . (SIMPLE COMMAND EXPANSION) . 1. (parser) ( ) . 2. . . 3. (REDIRECTION) . 4. = . . ( ) . . . . . . . . . (COMMAND EXECUTION) . . (FUNCTIONS) . . . () bash PATH . Bash (hash table) ( hash SHELL BUILTIN COMMANDS ). Bash PATH . command_not_found_handle . (subshell) . . () . . shell script ( ) . Bash . ( hash SHELL BUILTIN COMMANDS . #! . . ( ) . (COMMAND EXECUTION ENVIRONMENT) execution environment ( ) : o exec. o cd pushd popd . o (file creation mode mask) umask . o (traps) trap . o set . o . o ( ) set . o shopt . o alias . o (process IDs) $$ PPID. . . o . o . o (umask). o export . o (traps) . . subshell () . (asynchronous) . (pipeline) lastpipe . . posix -e . posix bash -e . posix inherit_errexit . & /dev/null . . (ENVIRONMENT) environment () . name-value (-) name=value . . export . . export declare -x unset . . unset export -n export declare -x. PARAMETERS simple command . . (export) . -k ( set ) . bash _ . (EXIT STATUS) waitpid . 0 255 125 . . . . . N bash N+128 . 127 . 126 . . 0 (true) (false) . 2 . $? . Bash . exit . (SIGNALS) bash (trap) SIGTERM ( kill 0 ) SIGINT ( wait ). bash SIGINT . bash SIGQUIT . bash SIGTTIN SIGTTOU SIGTSTP . trap . bash trap . SIGINT SIGQUIT . SIGTTIN SIGTTOU SIGTSTP . SIGHUP . SIGHUP . SIGCONT SIGHUP ( (JOB CONTROL) ). disown ( (SHELL BUILTIN COMMANDS) ) disown -h SIGHUP . huponexit shopt bash SIGHUP . bash (trap) . bash wait wait . bash SIGINT ( ^C) . ^C SIGINT . bash . bash . bash . (JOB CONTROL) . bash SIGINT SIGINT : 1. SIGINT bash SIGINT SIGINT ( SIGINT ). 2. SIGINT SIGINT . bash SIGINT SIGINT ( emacs ) . bash SIGINT . bash SIGINT . SIGINT . SIGINT bash SIGINT ( ) . (JOB CONTROL) (suspend) (resume) . bash . (job) . jobs . jobs . . bash ( ) : [1] 25647 (PID) . . Bash . . . . ( ) SIGINT . . . "stty tostop" . SIGTTIN (SIGTTOU) ( "tostop" ) . bash bash . (suspend) ( ^Z Control-Z) bash . (delayed suspend) ( ^Y Control-Y) bash . bg fg kill . (typeahead). SIGSTOP kill . . % (jobspec) . n %n . . %ce ce . %?ce ce . bash . %% %+ (current job) . % ( ) . %- (previous job) . . . . %+ %- . ( jobs) + - . : %1 "fg %1" . "%1 &" . bash . -b set bash . Bash (trap) SIGCHLD . bash bash . jobs wait (PID) . . bash ( checkjobs shopt ) checkjobs . jobs . bash . wait wait . -f wait . (PROMPTING) bash PS1 PS2 . Bash PROMPT_COMMAND . PROMPT_COMMAND Bash . Bash PS0 . Bash PS4 -x . Bash PS0 PS1, PS2 PS4 : \a (ASCII bell character) (07). \d "Weekday Month Date" ( "Tue May 26"). \D{format} format strftime(3) format (locale) . . \e ASCII ( 033). \h ".". \H . \j . \l (basename) ( "ttys0"). \n (newline). \r (carriage return). \s : (basename) $0 ( ). \t HH:MM:SS. \T HH:MM:SS. \@ am/pm. \A HH:MM. \u . \v bash ( 2.00). \V bash + (patch level) ( 2.00.0). \w PWD ($PWD) $HOME (tilde) ( PROMPT_DIRTRIM ). \W (basename) $PWD $HOME . \! . \# . \$ (UID) 0 # $. \nnn nnn. \\ ( ). \[ . \] . : ( (HISTORY) ) . promptvars ( shopt (SHELL BUILTIN COMMANDS) ). . (READLINE) --noediting . -e read . emacs vi . -o emacs -o vi set ( (SHELL BUILTIN COMMANDS) ). +o emacs +o vi set . (Readline Notation) Emacs . Control C-key C-n Control-N . meta M-key M-x Meta-X . Meta "Alt" "Option" . Meta M-x ESC x Escape x . ESC meta prefix ( ) . M-C-x ESC Control-x : Escape Control x . Meta (0200) . enable-meta-key . ESC . Meta ESC force-meta-prefix M-key ( (Readline Key Bindings) ) . Readline . . ( kill-line) . . point mark . point mark region () . Readline active region ( ) : readline active-region-start-color . enable-active-region . . killing (/) (yanking ). kill ring ( ) . (yank ). . (Readline Initialization) Readline ( inputrc) . INPUTRC . ~/.inputrc . readline /etc/inputrc . readline readline . inputrc . . # (comment) . $ . . inputrc . readline bash . M-Control-u: universal-argument C-Meta-u: universal-argument inputrc M-C-u readline universal-argument . : DEL ESC ESCAPE LFD NEWLINE RET RETURN RUBOUT ( destructive backspace) SPACE SPC TAB. readline ( macro). . (Readline Key Bindings) inputrc . . : Meta- Control- . . . keyname:function-name macro keyname . : Control-u: universal-argument Meta-Rubout: backward-kill-word Control-o: "> output" C-u universal-argument M-DEL backward-kill-word C-o ( "> output" ). "keyseq":function-name macro keyseq keyname . GNU Emacs . "\C-u": universal-argument "\C-x\C-r": re-read-init-file "\e[11~": "Function Key 1" C-u universal-argument . C-x C-r re-read-init-file ESC [ 1 1 ~ "Function Key 1" . GNU Emacs : \C- (control). \M- force-meta-prefix . \e (escape character). \\ (Backslash). \" ("). \' ('). GNU Emacs : \a ( bell) \b (backspace) \d (delete) \f (form feed) \n (newline) \r (carriage return) \t (horizontal tab) \v (vertical tab) \nnn ( ) nnn ( ). \xHH ( ) HH ( ). . . . ( /) " '. Bash readline bind . -o emacs -o vi set ( (SHELL BUILTIN COMMANDS) ) . Readline Readline . inputrc : set variable-name value bind ( (SHELL BUILTIN COMMANDS) ). readline On Off ( ) . . readline (null) "on" ( ) "1" On . Off . bind -V readline ( (SHELL BUILTIN COMMANDS) ). : active-region-start-color (active region) ( enable-active-region ). (escape sequences) . . . (standout) terminfo . "\e[01;33m" . active-region-end-color active-region-start-color "" "" . . . . terminfo . "\e[0m" . bell-style (audible) readline . none readline . visible readline . audible readline . bind-tty-special-chars (On) On readline () readline (bind) . readline . "stty -a" bash ( cchars) . blink-matching-paren (Off) On readline . colored-completion-prefix (Off) On readline . LS_COLORS . $LS_COLORS ".readline-colored-completion-prefix" readline . colored-stats (Off) On readline . LS_COLORS . comment-begin ("#") insert-comment readline . emacs M-# vi # . completion-display-width (-1) (completion) . 0 . 0 . -1 . completion-ignore-case (Off) On readline (case-insensitive) . completion-map-case (Off) On completion-ignore-case readline (-) (_) . completion-prefix-display-length (0) ( /) . readline (...) . readline (___) . completion-query-items (100) possible-completions . . readline readline . readline . convert-meta (On) On readline escape ASCII ( meta ). On locale readline Off . LC_CTYPE locale . force-meta-prefix . disable-completion (Off) On readline . self-insert . echo-control-characters (On) On readline (echo) . editing-mode (emacs) readline Emacs vi. editing-mode emacs vi . emacs-mode-string (@) show-mode-in-prompt (primary prompt) emacs . meta- control- backslash . \1 \2 . enable-active-region (On) On readline (active) . readline active-region-start-color (highlight) standout . bracketed-paste . enable-bracketed-paste (On) On readline (paste) . bracketed-paste mode readline . enable-keypad (Off) On readline (application keypad) . . enable-meta-key (On) On readline (meta) . Meta Meta (0200) ( ). expand-tilde (Off) On readline (tilde expansion) . force-meta-prefix (Off) On readline \M- Meta- ( (Key Bindings) ) \M-C Meta-C ESC C ( ) . force-meta-prefix Off () readline convert-meta : convert-meta On readline Off readline C (0200) . history-preserve-point (Off) On previous-history next-history (point) . history-size (unset) . . . bash HISTSIZE . history-size 500 . horizontal-scroll-mode (Off) On readline () . . input-meta (Off) On readline ( ) . Off (locale) readline On . LC_CTYPE . meta-flag input-meta . isearch-terminators ("C-[C-j") . ESC C-j . keymap (emacs) (keymap) readline . emacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-command vi-insert. vi vi-command emacs emacs-standard . emacs editing-mode . keyseq-timeout (500) readline ( ). readline . readline . readline . mark-directories (On) On . mark-modified-lines (Off) On readline (*) . mark-symlinked-directories (Off) On mark-directories . match-hidden-files (On) On readline "." ( ) . Off "." . menu-complete-display-prefix (Off) On ( ) . output-meta (Off) On readline . Off readline On . LC_CTYPE . page-completions (On) On readline more(1) . prefer-visible-bell bell-style. print-completions-horizontally (Off) On readline . revert-all-at-newline (Off) On readline accept-line (undo) . (undo) readline . search-ignore-case (Off) On readline . show-all-if-ambiguous (Off) . On . show-all-if-unmodified (Off) show-all-if-ambiguous . On ( ) . show-mode-in-prompt (Off) On : emacs vi vi. ( emacs-mode-string). skip-completed-text (Off) On . . readline (point) . vi-cmd-mode-string ((cmd)) show-mode-in-prompt vi . (key binding) meta- control- (backslash escape) . \1 \2 . vi-ins-mode-string ((ins)) show-mode-in-prompt vi . (key binding) meta- control- (backslash escape) . \1 \2 . visible-stats (Off) On stat(2) . (Readline Conditional Constructs) Readline C . (parser directive) . $if $if readline . . mode mode= $if readline emacs vi . set keymap emacs-standard emacs-ctlx readline emacs . term term= . = - . xterm xterm xterm-256color . version version readline . version readline . = ( ==) != <= >= < > . (major) (minor) ( 7.1). 0 . (whitespace) version . application application . readline application name ( ) . . bash : $if Bash # Quote the current or previous word "\C-xq": "\eb\"\ef\"" $endif variable variable readline . = == !=. . . on off . $else $if . $endif $if . $include . /etc/inputrc : $include /etc/inputrc (Searching) Readline ( HISTORY ) . : (incremental) (non-incremental). . readline . . emacs C-r . C-s . isearch-terminators . ESC C-j . C-g . . C-r C-s . . readline . (newline) . . Readline . C-r readline . . . Readline . . point mark set-mark . point mark region () . Readline active region ( ) : readline active-region-start-color (highlight) . enable-active-region readline . . beginning-of-line (C-a) . Home . end-of-line (C-e) . End . forward-char (C-f) . . backward-char (C-b) . . forward-word (M-f) . - ( ) . backward-word (M-b) . - ( ) . shell-forward-word (M-C-f) . - (metacharacters) . shell-backward-word (M-C-b) . - (metacharacters) . previous-screen-line point . readline point (prompt) . next-screen-line point . readline readline . clear-display (M-C-l) (scrollback buffer) . clear-screen (C-l) . . redraw-current-line . accept-line (Newline, Return) . HISTCONTROL HISTIGNORE . . previous-history (C-p) . . next-history (C-n) . . beginning-of-history (M-<) . end-of-history (M->) . operate-and-get-next (C-o) (newline) . . fetch-history . . reverse-search-history (C-r) "" . . . forward-search-history (C-s) "" . . . non-incremental-reverse-search-history (M-p) . . non-incremental-forward-search-history (M-n) . . history-search-backward (point). . . Page Up . history-search-forward (point). . . Page Down . history-substring-search-backward (point). . (non- incremental) . history-substring-search-forward (point). . (non- incremental) . yank-nth-arg (M-C-y) ( ) . n n ( ). n . n n "!n" . yank-last-arg (M-., M-_) ( ). yank-nth-arg . yank-last-arg ( ) . . ( ). "!$" . shell-expand-line (M-C-e) . $'string' $"string" (tilde expansion) . . (HISTORY EXPANSION) . history-expand-line (M-^) . (HISTORY EXPANSION) . magic-space (space). (HISTORY EXPANSION) . alias-expand-line . (ALIASES) . history-and-alias-expand-line . insert-last-argument (M-., M-_) yank-last-arg. edit-and-execute-command (C-x C-e) . Bash $VISUAL $EDITOR emacs . end-of-file ( C-d) (end-of-file) stty(1) . (point) readline EOF . delete-char (C-d) . (bound) EOF tty C-d . Delete . backward-delete-char (Rubout) . (kill ring) . forward-backward-delete-char . quoted-insert (C-q, C-v) . C-q . tab-insert (C-v TAB) (tab). self-insert (a, b, A, 1, !, ...) . bracketed-paste-begin (escape sequence) "bracketed paste" . readline (pasted) . self-insert . bracketed paste (region) . transpose-chars (C-t) . . . transpose-words (M-t) . . shell-transpose-words (M-C-t) . . shell-forward-word shell-backward-word . upcase-word (M-u) ( ). . downcase-word (M-l) ( ). . capitalize-word (M-c) ( ). . overwrite-mode (overwrite mode). . (insert mode) . emacs vi . readline() . self-insert . backward-delete-char (space) . (unbound) Insert . (Killing and Yanking) kill-line (C-k) (point) . . backward-kill-line (C-x Rubout) . . unix-line-discard (C-u) (kill- ring). kill-whole-line . kill-word (M-d) . forward-word . backward-kill-word (M-Rubout) . backward-word . shell-kill-word (M-C-d) . shell-forward-word . shell-backward-kill-word . shell-backward-word . unix-word-rubout (C-w) (white space) (kill- ring). unix-filename-rubout (slash) (kill-ring). delete-horizontal-space (M-\) . kill-region (region) . copy-region-as-kill (kill buffer) (yank ). copy-backward-word . backward-word . copy-forward-word . forward-word . yank (C-y) . yank-pop (M-y) . yank yank-pop . (Numeric Arguments) digit-argument (M-0, M-1, ..., M--) . M-- . universal-argument . . universal-argument . . . (Completing) complete (TAB) (point). Bash ( Programmable Completion ) ( $ ) ( ~ ) ( @ ) ( ) . . possible-completions (M-?) . readline completion-display- width COLUMNS . insert-completions (M-*) possible-completions (space) . menu-complete complete . menu-complete . menu-complete ( bell-style) . n n . TAB . menu-complete-backward menu-complete menu-complete . . export-completions readline : o N o o S:E S E readline o "0" S:E . . S:E . N . . N S:E . . delete-char-or-list ( delete-char). possible-completions . . complete-filename (M-/) . possible-filename-completions (C-x /) . complete-username (M-~) . possible-username-completions (C-x ~) . complete-variable (M-$) . possible-variable-completions (C-x $) . complete-hostname (M-@) (hostname) . possible-hostname-completions (C-x @) . complete-command (M-!) . . possible-command-completions (C-x !) . dynamic-complete-history (M-TAB) . dabbrev-expand (menu completion) . complete-into-braces (M-{) ( (Brace Expansion) ). (Keyboard Macros) start-kbd-macro (C-x () . end-kbd-macro (C-x )) . call-last-kbd-macro (C-x e) . print-last-kbd-macro () inputrc . (Miscellaneous) re-read-init-file (C-x C-r) inputrc (bindings) . abort (C-g) ( bell-style). do-lowercase-version (M-A, M-B, M-x, ...) x . x . prefix-meta (ESC) (Metafy) . ESC f Meta-f. undo (C-_, C-x C-u) (undo) . revert-line (M-r) . undo . tilde-expand (M-&) . set-mark (C-@, M-) (mark) (point). . exchange-point-and-mark (C-x C-x) . . character-search (C-]) . . character-search-backward (M-C-]) . . skip-csi-sequence Home End . CSI (CSI) ESC [. "\e[" (bound) CSI readline . ESC [ . insert-comment (M-#) comment-begin readline . (toggle) : comment-begin comment-begin . (newline) . comment-begin () . . spell-correct-word (C-x s) cdspell. shell-forward-word . glob-complete-word (M-g) . glob-expand-word (C-x *) . * . glob-list-expansions (C-x g) glob-expand-word . * . dump-functions readline. inputrc . dump-variables readline readline . inputrc . dump-macros readline readline . inputrc . execute-named-command (M-x) readline . . display-shell-version (C-x C-v) bash . (Programmable Completion) ( compspec) complete ( (SHELL BUILTIN COMMANDS) ) readline . bash . compspec compspec . ( ) bash compspec -E complete . -I complete ; | . . bash compspec . compspec bash compspec . compspec compspec bash compspec -D complete . compspec bash (alias) compspec . compspec bash (Completing) . compspec bash . bash (actions) compspec . . -f -d bash FIGNORE . -G . . Bash FIGNORE GLOBIGNORE . -W . IFS . IFS . () (EXPANSION) . (Word Splitting) . . bash -F -C . bash COMP_LINE COMP_POINT COMP_KEY COMP_TYPE (Shell Variables) . bash COMP_WORDS COMP_CWORD . ($1) ($2) ($3) . . -F . compgen compopt . COMPREPLY . -C . . () . . bash -X . & . & . . ! bash . nocasematch bash . -P -S readline . -o dirnames compspec complete bash . -o plusdirs compspec complete bash . compspec . bash readline . -o bashdefault compspec complete compspec bash . compspec ( ) bash -o default compspec complete readline . complete compopt readline . -o fullquote readline . complete . compspec readline readline mark-directories readline mark- symlinked-directories. . complete -D . 124 . 124 compspec ( ) compspec . . compspec : _completion_loader() { . "/etc/bash_completion.d/$1.sh" \ >/dev/null 2>&1 && return 124 } complete -D -F _completion_loader \ -o bashdefault -o default (HISTORY) -o history set . HISTSIZE : HISTSIZE ( 500). ( EXPANSION ) HISTIGNORE HISTCONTROL . bash HISTFILE ( ~/.bash_history) . (history file) . (truncate) HISTFILESIZE . HISTFILESIZE (null) . . HISTTIMEFORMAT . . bash $HISTSIZE $HISTFILE . histappend ( shopt SHELL BUILTIN COMMANDS ) bash (append ) (overwrite) . HISTFILE . bash HISTFILESIZE . HISTTIMEFORMAT . . HISTTIMEFORMAT . fc ( SHELL BUILTIN COMMANDS ) . history . . . HISTCONTROL HISTIGNORE . cmdhist (semicolons) () . lithist cmdhist . shopt SHELL BUILTIN COMMANDS . (HISTORY EXPANSION) csh . . +H set ( (SHELL BUILTIN COMMANDS) ). "set -H" . . . . . . . (event) (words) . (modifiers) . (metacharacter) . (event designator) (word designator) (modifiers) . ! . . (\) () . : (space) (tab) (newline) (carriage return) = . (quick substitution) ( histchars ) . !! . (Event Designators) . . shopt ( shopt ). histverify readline . readline . readline histreedit readline . -p history . -s history . ( histchars (Shell Variables) ). . (Event Designators) . ( ) . . ! blank carriage return = extglob shopt ( . !n n . !-n n. !! . "!-1" . !string string . !?string[?] string . string ? . string . ^string1^string2^ . string1 string2. "!!:s^string1^string2^" ( (Modifiers) ). !# . (Word Designators) . . : . ^ $ * - % . 0 () . . 0 (zero) . . n n. ^ : . $ . . % "?string?" . . x-y "-y" "0-y" . * . "1-$" . * . x* x-$ . x- x* x-$ . x 0 . !! . (Modifiers) ":" . . h (trailing pathname component) (head) . t (tail) . r .xxx (basename) . e . p . q . x q (blanks) . q x . s/old/new/ new old . / . . old new () . & new old . & . old (null) old string !?string[?] . new old . & . g (event line) . ":s" ( ":gs/old/new/") ":&" . ":s" / . a g . G "s" "&" . (SHELL BUILTIN COMMANDS) - -- . : true false test/[ -- . exit logout return break continue let shift - -- . - -- . : [arguments] arguments . . . [-p path] filename [arguments] source [-p path] filename [arguments] . (source) filename filename . filename . . -p . path filename . PATH filename . filename . bash posix filename PATH -p . sourcepath shopt . PATH . arguments filename . . -T . (trap) DEBUG DEBUG . . DEBUG . -T (sourced) DEBUG . . filename ( 0) filename . alias [-p] [name[=value] ...] -p alias alias name=value . name value . value . name (value) name . alias (true) (name) =value . bg [jobspec ...] jobspec & . jobspec << >> (current job) . bg jobspec 0 jobspec . bind [-m keymap] [-lsvSVX] bind [-m keymap] [-q function] [-u function] [-r keyseq] bind [-m keymap] -f filename bind [-m keymap] -x keyseq[:] shell-command bind [-m keymap] keyseq:function-name bind [-m keymap] -p|-P [readline-command] bind [-m keymap] keyseq:readline-command bind readline-command-line readline readline readline . readline .inputrc : '"\C-x\C-r": re-read-init-file'. readline bind . : -m keymap keymap . keymap : emacs, emacs-standard, emacs-meta, emacs-ctlx, vi, vi-move, vi-command vi-insert. vi vi-command (vi-move ) emacs emacs-standard . -l readline. -p readline bind readline . bind readline . -P readline . bind readline . -s readline bind readline . -S readline . -v readline bind readline . -V readline . -f filename filename . -q function function readline . -u function function readline . -r keyseq keyseq . -x keyseq[: ]shell-command keyseq shell-command . keyseq shell-command . shell-command (double quotes) readline shell-command . readline . (single quotes) . shell-command READLINE_LINE readline READLINE_POINT READLINE_MARK ( mark) . READLINE_ARGUMENT . . READLINE_LINE READLINE_POINT READLINE_MARK . -X bind . 0 . break [n] for while until select. n break n . n >= 1 . n . 0 n 1 . builtin shell-builtin [arguments] shell-builtin arguments . . cd . shell-builtin (false) . caller [expr] (context) ( . source) . expr caller . expr caller . (stack trace) . 0 . 0 expr . cd [-L] [-@] [dir] cd -P [-e] [-@] [dir] dir . dir HOME dir . CDPATH dir (/) cd : dir CDPATH . CDPATH (:) . (null) CDPATH ".". -P cd dir .. dir ( -P set ). -L cd .. dir . .. dir cd dir dir dir . cd . -L -P cd -L . -e -P cd . -@ (extended attributes) . - $OLDPWD . cd CDPATH - cd . cd PWD OLDPWD . (true) (false) . command [-pVv] command [arg ...] command command arg command . command PATH . -p command PATH . -V -v command command . -v command -V . -V -v command . command . command command . compgen [-V varname] [option] [word] word option complete -p -r -D -E -I . -V compgen varname . -F -C . . word word . (true) . complete [-abcdefgjksuv] [-o comp-option] [-DEI] [-A action] [-G globpat] [-W wordlist] [-F function] [-C command] [-X filterpat] [-P prefix] [-S suffix] name [name ...] complete -pr [-DEI] [name ...] name . -p name . -r name name . -D "" (default) . -E "" (empty) . -I ; | . -D -E -I . -D -E -I name . (Programmable Completion) . . -G -W -X ( -P -S) (quote) complete . -o comp-option comp-option compspec . comp-option : bashdefault compspec bash . default compspec readline . dirnames compspec . filenames readline compspec ( ). . fullquote readline . noquote readline ( ). nosort readline . nospace readline ( ) . plusdirs compspec . -A action action : alias . -a . arrayvar . binding Readline. builtin . -b . command . -c . directory . -d . disabled . enabled . export (export) . -e . file readline. -f . function . group . -g . helptopic help . hostname HOSTFILE . job . -j . keyword . -k . running . service . -s . setopt -o set. shopt shopt . signal . stopped . user . -u . variable . -v . -C command command . -F . -F function function . ($1) ($2) ($3) . function COMPREPLY . -G globpat globpat . -P prefix prefix . -S suffix suffix . -W wordlist wordlist IFS . wordlist IFS . . -X filterpat filterpat . filterpat . ! filterpat filterpat . (true) -p -r -D -E -I name name . compopt [-o option] [-DEI] [+o option] [name] name option name . option name . option complete . -D "" -E "" -I . complete . -D -E -I . (true) name . continue [n] continue for while until select . n bash n . n >= 1 . n ( "" top- level) . 0 n 1 . declare [-aAfFgiIlnrtux] [-p] [name[=value] ...] typeset [-aAfFgiIlnrtux] [-p] [name[=value] ...] / () . name . -p name . -p name -f -F . -p name declare . -p declare . -f . -F . extdebug shopt name . -F -f . -g (global scope) declare . declare . -I ( nameref) name . (unset) . : -a name () ( Arrays ). -A name () ( Arrays ). -f name . -i ( ARITHMETIC EVALUATION ) . -l . . -n name nameref (name reference) . name . name -n name . nameref . -r name (readonly) . unset . -t name trace . (traps) DEBUG RETURN . trace . -u . . -x name (export) . "+" "-" () +a +A +r . declare typeset local name -g . =value value . -a -A . 0 "-f foo=bar" ( Arrays ) name -f . dirs [-clpv] [+n] [-n] . . pushd popd . . : -c . -l ( ) . -p . -v () . +n n dirs . -n n dirs . 0 n . disown [-ar] [-h] [id ...] id . id jobspec pid id pid disown pid jobspec . -h disown id SIGHUP SIGHUP. id -a -r id . id -a -r disown . 0 id . echo [-neE] [arg ...] arg . 0 . -n . -e echo . -E . xpg_echo echo . echo -- . echo : \a ( bell) \b (backspace) \c \e \E (escape) \f (form feed) \n (new line) \r (carriage return) \t \v \\ ( ) \0nnn () nnn ( ). \xHH () HH ( ). \uHHHH (ISO/IEC 10646) HHHH ( ). \UHHHHHHHH (ISO/IEC 10646) HHHHHHHH ( ). echo . enable [-a] [-dnps] [-f filename] [name ...] . . -n name name . test PATH : "enable -n test". name -p . . -n . -a . -s special POSIX . -f name (shared object) filename . filename Bash BASH_LOADABLES_PATH (:) filename . BASH_LOADABLES_PATH "." . -d -f . -s -f POSIX . name enable name name : "enable -f name name". 0 name . eval [arg ...] arg . Bash eval . arg eval 0 . exec [-cl] [-a name] [command [arguments]] command . command . arguments command . -l (dash) command . login(1) . -c command (environment) . -a name . command execfail . . . exec (subshell) . command 0 . 1 . exit [n] n . n . (trap) EXIT . export [-fn] [name[=value]] ... export -p [-f] names (export) . -f names . -n (export) name . names -p export . -p -f . -p . export =value . (export) value . export 0 names -f name . false () . fc [-e ename] [-lnr] [first] [last] fc -s [pat=rep] [cmd] first last . First last ( ) ( ) . 0 first last -1 -0 ( fc) 0 -1 -0 . last ( "fc -l -10" ) first . first -16 . -l . -n . -r . fc ename . ename fc FCEDIT EDITOR FCEDIT . fc vi. . fc . fc pat rep command . Command first . fc "r="fc -s"", "r cc" "cc" "r" . first last . . cmd fc . fg [jobspec] jobspec . jobspec fg . jobspec jobspec . getopts optstring name [arg ...] getopts . optstring (colon) (whitespace) . . getopts name name OPTIND . OPTIND 1 . getopts OPTARG . OPTIND getopts . getopts . OPTIND name ? . getopts arg getopts . getopts . optstring getopts (silent) . getopts . OPTERR 0 getopts optstring . getopts ? name OPTARG (unset) . getopts OPTARG . getopts name (?) OPTARG . getopts name (:) OPTARG . getopts true . false . hash [-lr] [-p filename] [-dt] [name] hash name $PATH . name . -p hash filename . -r . PATH . -d name . -t hash name . name -t hash (name) . -l . -l hash . -t -d -p ( name ) . . -t -p -d . name . help [-dms] [pattern] . pattern help pattern . : -d pattern -m pattern man-page -s pattern pattern ( Pattern Matching ) help pattern . pattern help . help . 0 pattern . history [n] history -c history -d offset history -d start-end history -anrw [filename] history -p arg [arg ...] history -s arg [arg ...] . * . n n . HISTTIMEFORMAT strftime(3) . history HISTTIMEFORMAT . filename history HISTFILE . filename HISTFILE -a -n -r -w . : -c . . -d offset offset. offset -1 history -d . -d start-end start end . start end . -a "new" . bash . -n . bash . -r . -w . -p args . arg . -s args . args . HISTTIMEFORMAT history . . 0 offset -d -p . jobs [-lnprs] [ jobspec ... ] jobs -x command [ args ... ] . : -l (PID) . -n . -p (PID) . -r . -s . jobspec jobs . 0 jobspec . -x jobs jobspec command args command args . kill [-s sigspec | -n signum | -sigspec] id [ ... ] kill -l|-L [sigspec | exit_status] sigspec signum id . id jobspec pid . sigspec SIGKILL ( SIG ) signum . sigspec kill SIGTERM . -l . -l kill 0 . exit_status -l kill . kill 128 . -L -l . kill (true) (false) . let arg [arg ...] arg ( (ARITHMETIC EVALUATION) ). arg 0 let 1 let 0 . local [option] [name[=value] ... | - ] name value . option declare . local name . local . name - local : set local . set . local . 0 local name name . logout [n] (login shell) n . mapfile [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array] readarray [-d delim] [-n count] [-O origin] [-s count] [-t] [-u fd] [-C callback] [-c quantum] [array] fd -u array. MAPFILE array . : -d delim . delim mapfile NUL . -n count . count 0 . -O array origin. 0 . -s count . -t delim ( newline) . -u fd . -C callback quantum . -c quantum . -c callback . -C -c quantum . callback . callback . mapfile array . mapfile array array . popd [-n] [+n] [-n] . dirs popd "popd +0." popd . : -n . +n dirs n . : "popd +0" "popd +1" . -n dirs n . : "popd -0" "popd -1" . -n popd cd . cd popd . popd n (false) . popd bash dirs . printf [-v var] format [arguments] arguments format. -v var . format : argument . printf(3) cCsSndiouxXeEfFgGaA printf : %b printf (backslash) argument echo -e . %q printf argument . %q %Q $'' . printf (single quote) . %Q %q argument . %(datefmt)T printf - datefmt strftime(3) . argument (epoch) . : -1 -2 . -1 . printf . %b %q %T ( ) . %n . %s %c l (long) . %S %C %ls %lc . C (locale) . format arguments . format arguments . . pushd [-n] [+n] [-n] pushd [-n] [dir] . pushd . : -n . +n n ( dirs ) . -n n ( dirs ) . dir dir . -n pushd cd . cd pushd . pushd . pushd n . pushd bash dirs . pwd [-LP] . -P -o physical set . -L . 0 . read [-Eers] [-a aname] [-d delim] [-i text] [-n nchars] [-N nchars] [-p prompt] [-t timeout] [-u fd] [name ...] fd -u (Word Splitting) name name . name . . IFS ( (Word Splitting)). (\) . : -a aname aname . aname (unset) . name . -d delim delim . delim read NUL . -e read readline ( READLINE above) . Readline ( ) readline . -E read readline ( READLINE above) . Readline ( ) bash (programmable completion) . -i text readline read text . -n nchars read nchars EOF read nchars . -N nchars read nchars EOF read . nchars read . IFS ( -r ). -p prompt prompt . -r (escape) . . - . -s (). ( ) . -t timeout read ( ) timeout . timeout . read (pipe) . read name . timeout read . EOF . -u fd fd . delim read NUL . names read REPLY . (end-of- file) read ( ) ( ) -u . readonly [-aAf] [-p] [name[=word] ...] names (readonly) names (unset). -f name . -a -A . -A . name -p . . -p . readonly =value . value . names -f name . return [n] (sourced file) n . n . return (trap handler) . return DEBUG return . return . (source) n . n . RETURN . return . source . set [-abefhkmnptuvxBCEHPT] [-o option-name] [--] [-] [arg ...] set [+abefhkmnptuvxBCEHPT] [+o option-name] [--] [-] [arg ...] set -o set +o . . posix . (locale) . . $1 $2 ... $n . : -a export . -b . . -e ( ) ( (SHELL GRAMMAR) ) . while until if elif && || && || ( pipefail) ! . (subshell) -e . (trap) ERR . ( (COMMAND EXECUTION ENVIRONMENT) ) . -e -e -e . -e -e . -f (pathname expansion). -h . . -k . -m (Monitor mode). . ( (JOB CONTROL) ). . . -n . . . -o option-name option-name : allexport -a. braceexpand -B. emacs emacs. --noediting . read -e . errexit -e. errtrace -E. functrace -T. hashall -h. histexpand -H. history (HISTORY). . ignoreeof "IGNOREEOF=10" ( (Shell Variables) ). keyword -k. monitor -m. noclobber -C. noexec -n. noglob -f. nolog . notify -b. nounset -u. onecmd -t. physical -P. pipefail (pipeline) () . . posix posix bash POSIX . (SEE ALSO) posix bash . privileged -p. verbose -v. vi vi. read -e . xtrace -x. -o option-name set . +o option-name set set . -p privileged. $ENV $BASH_ENV SHELLOPTS BASHOPTS CDPATH GLOBIGNORE . () () -p . -p . . -r (restricted shell). . -t . -u ( "@" "*" "@" "*") . . -v . -x simple command ( ) for case select for PS4 (standard error) . -B ( (Brace Expansion) ). . -C bash > >& <> (overwrite) . >| > . -E (trap) ERR (subshell) . ERR . -H !. . -P cd (symbolic links) . . bash . -T DEBUG RETURN . DEBUG RETURN . -- (unset) . arg - . - arg . -x -v () . arg . . + - . . $- . . shift [n] n+1 ... $1 .... $# $#-n+1 (unset ). n $# . n 0 . n 1 . n $# . n $# 0 . shopt [-pqsu] [-o] [optname ...] . -o -o set . -p optname . -p . : -s () optname. -u ( ) optname. -q ( ) optname . optname -q optname . -o optname -o set . -s -u optname shopt . shopt ( ) . optname . optname . shopt : array_expand_once . assoc_expand_once array_expand_once. autocd cd . . bash_source_fullpath BASH_SOURCE ( (Shell Variables) ). cdable_vars cd . cdspell cd . . cd . . checkhash bash . bash . checkjobs bash . bash ( (JOB CONTROL) ). . checkwinsize bash () LINES COLUMNS (standard error) . . cmdhist bash . . (HISTORY) . compat31 compat32 compat40 compat41 compat42 compat43 compat44 ( (SHELL COMPATIBILITY MODE) ). complete_fullquote bash (completion) (metacharacters) (quote) . bash . . bash . bash 4.2 . direxpand bash . readline . bash . dirspell bash . dotglob bash "." . . .. dotglob . execfail exec . exec . expand_aliases (ALIASES) . . extdebug (debugger profile) --debugger. : 1. -F declare . 2. DEBUG . 3. DEBUG ( . source ) return . 4. BASH_ARGC BASH_ARGV . 5. : ( command ) DEBUG RETURN . 6. : ( command ) ERR . extglob (Pathname Expansion) . extquote $'string' $"string" ${parameter} . . failglob . force_fignore FIGNORE . FIGNORE (Shell Variables) . . globasciiranges ( (Pattern Matching) ) ) C . b A B . globskipdots . .. "." . . globstar ** . / . gnu_errfmt (GNU error message format) . histappend HISTFILE . histreedit readline . histverify readline . readline . hostcomplete readline bash @ (hostname) ( Completing READLINE above ). . huponexit bash SIGHUP . inherit_errexit errexit . posix . interactive_comments # ( (COMMENTS) above ). . lastpipe (pipeline) . lithist cmdhist . localvar_inherit . nameref . localvar_unset unset . . login_shell ( (INVOCATION) above ). . mailwarn bash bash "The mail in mailfile has been read" . no_empty_cmd_completion readline bash PATH . nocaseglob bash ( (Pathname Expansion) ) . nocasematch bash case [[ . noexpand_translation bash $"..." (double quotes) (single quotes) . . nullglob ( (Pathname Expansion) ) . patsub_replacement bash & (Parameter Expansion) . . progcomp ( (Programmable Completion) ). . progcomp_alias bash . bash . promptvars (PROMPTING) . . restricted_shell ( (RESTRICTED SHELL) ). . . shift_verbose shift (shift) . sourcepath . (source) PATH -p . . varredir_close {varname} ( REDIRECTION ) . xpg_echo echo (backslash-escape) . posix echo . suspend [-f] SIGCONT . (login shell) (job control) -f . 0 -f . test expr [ expr ] expr 0 () 1 () . . (CONDITIONAL EXPRESSIONS) . test -- . . . test . ! expr expr . ( expr ) expr . . expr1 -a expr2 expr1 expr2 . expr1 -o expr2 expr1 expr2 . test [ . 0 arguments (false) . 1 argument (true) (null) . 2 arguments ! . () above (CONDITIONAL EXPRESSIONS) . . 3 arguments . () above (CONDITIONAL EXPRESSIONS) . -a -o . ! . ( ) . . 4 arguments . ! . ( ) . . 5 or more arguments . posix [[ < > (locale) . posix test [ ASCII . (primaries) . POSIX -a -o . . test -a -o && || . times . 0 . trap [-lpP] [[action] sigspec ...] action sigspec . action ( sigspec ) - sigspec . action sigspec . trap trap . -p action trap sigspec trap . -P sigspec . -P sigspec . -P -p ( ) trap . -l . sigspec . SIG . -l sigspec . sigspec EXIT (0) action . sigspec DEBUG action simple command ( ) for case select (( [[ for ( (SHELL GRAMMAR) above). DEBUG extdebug ( shopt above). sigspec RETURN action . source . sigspec ERR action (pipeline - ) . ERR while until if && || && || ( pipefail) ! . errexit (-e) . . . . sigspec (false) trap (true) . true 0 . type [-aftpP] name [name ...] name . -t type alias keyword function builtin file name . name type . -p type $PATH name "type -t name" file . -P PATH name "type -t name" file . name -p -P PATH . -a type name . (-p -P) . type -a -p PATH name . -f command. type (true) (false) . ulimit [-HS] -a ulimit [-HS] [-bcdefiklmnpqrstuvxPRT [limit]] . -H -S (hard) (soft) . (non-root) . -H -S ulimit . limit hard soft unlimited . limit ulimit -H . . : -a . -b . -c core . -d (data segment) . -e ("nice"). -f . -i (pending). -k kqueue . -l . -m (resident set size) ( ). -n ( ). -p ( ). -q POSIX . -r (real- time). -s (stack). -t (cpu) . -u . -v . -x . -P (pseudoterminals). -R . -T (threads). limit -a limit . -f . -t -R -p -P -T -b -k -n -u posix -c -f . 0 . umask [-p] [-S] [mode] mode . mode () chmod(1) . mode ( ) umask . -S mode . -p mode . mode . unalias [-a] [name ...] name . -a . (true) name . unset [-fv] [-n] [name ...] name . -v name . -f name . -n name nameref name (unset) . -f -n . (Read-only) . . name ( ) . . BASH_ALIASES BASH_ARGV0 BASH_CMDS BASH_COMMAND BASH_SUBSHELL BASHPID COMP_WORDBREAKS DIRSTACK EPOCHREALTIME EPOCHSECONDS FUNCNAME GROUPS HISTCMD LINENO RANDOM SECONDS SRANDOM . (true) name . wait [-fn] [-p varname] [id ...] id id . id pid jobspec wait . id wait ( $! ) . -n wait id id . id id . -p wait varname . (unset) . -n . -f wait id . id . wait varname (unset) (SIGNALS) . id . (SHELL COMPATIBILITY MODE) 4.0 Bash (shell compatibility level) shopt (compat31 compat32 compat40 compat41 ). -- . . . ( compat32 bash-3.2 ). compat32 . bash . (locale) [[ bash-4.1 ASCII compat32 ASCII . . . 4.3 Bash : BASH_COMPAT. ( 4.2 compatNN 42) . bash-4.4 bash . BASH_COMPAT . Bash-5.0 shopt . BASH_COMPAT bash-5.0 . . compatNN NN . bash-5.0 compatNN shopt . bash-4.3 BASH_COMPAT bash-5.1 . compat31 o [[ ( =~) . compat32 o < > [[ (ASCII) . compat40 o < > [[ (ASCII) . Bash bash-4.1 strcmp(3) bash-4.1 strcoll(3) . compat41 o posix time ( POSIX ). o posix word () ( POSIX ). compat42 o bash-4.2 . o posix word ( POSIX ) . compat43 o posix ( ). o (while/until/) break continue . Bash-4.4 . compat44 o BASH_ARGV BASH_ARGC (extended debugging mode) . o (subshell) break continue . Bash-5.0 . o export readonly posix . compat50 o Bash-5.1 $RANDOM . 50 bash-5.0 (seed) RANDOM bash-5.0 . o bash-5.1 . Bash-5.1 -l . compat51 o unset @ * . o ( ((...)) ) for . o [[ . o (substring parameter brace expansion) . o $((...)) . o . o test -v A[@] A (true) . Bash-5.2 @ . o ${parameter[:]=value} value ( ) . Bash-5.2 . o (extended globbing - shopt ) extglob ( ) . extglob . extglob . compat52 o test . o -p -P bind bind . (RESTRICTED SHELL) bash rbash -r . . bash : o cd. o SHELL PATH HISTFILE ENV BASH_ENV. o /. o / .. o -p . . o history. o -p hash. o . o BASHOPTS SHELLOPTS . o > >| <> >& &> >>. o exec . o -f -d enable. o enable . o -p command. o set +r shopt -u restricted_shell. . ( COMMAND EXECUTION ) rbash . (SEE ALSO) Bash Reference Manual, Brian Fox and Chet Ramey The Gnu Readline Library, Brian Fox and Chet Ramey The Gnu History Library, Brian Fox and Chet Ramey Portable Operating System Interface (POSIX) Part 2: Shell and Utilities, IEEE -- http://pubs.opengroup.org/onlinepubs/9799919799 http://tiswww.case.edu/~chet/bash/POSIX -- posix sh(1), ksh(1), csh(1) emacs(1), vi(1) readline(3) (FILES) /bin/bash bash /etc/profile (login shells) ~/.bash_profile ~/.bashrc ~/.bash_logout ~/.bash_history HISTFILE bash ~/.inputrc readline (AUTHORS) Brian Fox, Free Software Foundation bfox@gnu.org Chet Ramey, Case Western Reserve University chet.ramey@case.edu (BUG REPORTS) bash . bash . ftp://ftp.gnu.org/pub/gnu/bash http://git.savannah.gnu.org/cgit/bash.git/snapshot/bash-master.tar.gz . bashbug . ! "" bug-bash@gnu.org gnu.bash.bug . : bash (bug) "" bashbug . : chet.ramey@case.edu. (BUGS) . bash sh POSIX . (alias) . (stoppable/restartable) . "a ; b ; c" . . (subshell) . () (export) . GNU Bash 5.3 2025 April 7 BASH(1)