Linux Shell
- Standard
Standard | Version | Description |
---|---|---|
POSIX 1003.2(ISO/IEC 9945-2) | 1992, 1988 | the shell and the standard utilities |
POSIX 1003.2a (User Portability Extensions, UPE) | standards of interactive shell use and interactive utilities like the vi editor |
- Linux Shell Scripting Tutorial v1.05r3 - A Beginner's handbook
- Shell Command Language Index
- UNIX Shell Script Tutorials & Reference
- An Introduction To Shell Programming
- UNIX Power Tools
- Scripts大集合
- SHELL SCRIPTING 教學與心得
- Bash Reference Manual, Bash Reference Manual
- Learning the bash Shell, 3rd, Fulltext, Learning the bash Shell, 3rd Safari, Learning the bash Shell, 2nd, Fulltext
- BASH Programming - Introduction HOWTO
- Advanced Bash-Scripting Guide
- 3.1. Shell initialization files
- 6.2 Bash Startup Files
- Bash的環境設定
- .bashrc 和 .bash_profile 的執行時機
- login shell
- /etc/profile
- /etc/profile.d/*
- /etc/bash_bashrc
- ~/.bash_profile, ~/.bash_login(C shell) or ~/.profile(Bourne shell and Korn shell)
- ~/.bash_logout(exit/logout)
- /etc/profile
- subshell
- ~/.bashrc
Feature | Syntax | Description | Contributor |
---|---|---|---|
variable assignment | varname=value | ||
environment variable | export varname or export varname=value | varname=value command for variables to be in the environment of a particular subprocess (command) only | |
brace expansion | For example, a{b,c} becomes ab ac | C shell | |
tilde(~) expansion | C shell | ||
variable substitution(variable expansion or parameter substitution) | $varname or ${varname} | ||
command substitution | $(…) or `…` | ||
arithmetic expression(arithmetic expansion) | `expr …` or let … or ((…)) | ||
pathname expansion(wildcard expansion or filename expansion) | * or ? or […] | ||
process substitute | <(list) or >(list) | ||
condition test | [...] or test … | tests whether the exit status of a list of commands is 0 (since 0 means "success" by UNIX convention) | |
extended condition test | [[...]] | No filename expansion or word splitting takes place between [[ and ]], but there is parameter expansion and command substitution | Korn shell |
arithmetic condition test | ((…)) or let … | return an exit status of 0 if the arithmetic expressions they evaluate expand to a non-zero | |
quoting |
page revision: 76, last edited: 17 Jul 2012 01:59