commencer
Introduction
C’est une référence rapide pour débuter avec Bash scripting.
-  apprendre bash en y minutes (learnxinyminutes.com Je ne sais pas si C’est le cas.wooledge.,td> 
${FOO:(-3):3}Substring from the right Length
Expression Description ${#FOO}Length of $FOOManipulation
Default values
Omitting the
:removes the (non)nullity checks, e.,g.${FOO-val}expands tovalif unset otherwise$FOO.,/div>Expression Description $#Number of arguments $*All arguments $@All arguments, starting from first $1First argument $_Last argument of the previous command See Special parameters.,043f44″>
 
File conditions
Example
# Stringif ]; then echo "String is empty"elif ]; then echo "String is not empty"else echo "This never happens"fi
# Combinationsif ]; then ...fi
# Equalif ]
# Regexif ]
if (( $a < $b )); then echo "$a is smaller than $b"fi
if ]; then echo "file exists"fi
Arrays
Defining arrays
Fruits=('Apple' 'Banana' 'Orange')
Fruits="Apple"Fruits="Banana"Fruits="Orange"
Working with arrays
Operations
Iteration
for i in "${arrayName}"; do echo $idone
Dictionaries
Defining
declare -A sounds
sounds="bark"sounds="moo"sounds="tweet"sounds="howl"
Declares sound as a Dictionary object (aka associative array).,
Travailler avec les dictionnaires
Itération
Itération sur les valeurs
for val in "${sounds}"; do echo $valdone
Itérer sur les touches
for key in "${!sounds}"; do echo $keydone
Options
Options
set -o noclobber # Avoid overlay files (echo "hi" > foo)set -o errexit # Used to exit upon error, avoiding cascading errorsset -o pipefail # Unveils hidden failuresset -o nounset # Exposes unset variables
Glob options
Set GLOBIGNORE en tant que séparés par deux points, liste des patrons à être retiré de globmatches.,>
!-nnth most recent command!nnth command in history!<command><command> Operations
!! and !$ can be replaced with any valid expansion.,aec7ee5e »>
)
!^!$!!:n-m!!:n-$nth token to last from most recent command!! can be replaced with any valid expansion i.,e. !cat, !-2, !42, etc.,
Special variables
| Expression | Description | 
|---|---|
$? | 
Exit status of last task | 
$! | 
PID of last background task | 
$$ | 
PID of shell | 
$0 | 
Filename of the shell script | 
See Special parameters.,
pwd # /home/user/foocd bar/pwd # /home/user/foo/barcd -pwd # /home/user/foo
Check for command’s result
if ping -c 1 google.com; then echo "It appears you have a working internet connection"fi
Grep check
if grep -q 'foo' ~/.bash_history; then echo "You appear to have typed 'foo' in the past"fi




