Scripts Bash triche

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 $FOO

    Manipulation

    Default values

    Omitting the : removes the (non)nullity checks, e.,g. ${FOO-val} expands to val if unset otherwise $FOO.,/div>

    Expression Description $# Number of arguments $* All arguments $@ All arguments, starting from first $1 First 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.,> Expand all parameters of most recent command !-n Expand nth most recent command !n Expand nth command in history !<command> Expand most recent invocation of command <command>

Operations

!! and !$ can be replaced with any valid expansion.,aec7ee5e »>

) !^ Expand first argument from most recent command !$ Expand last token from most recent command !!:n-m Expand range of tokens from most recent command !!:n-$ Expand 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

Also see

Author: admin

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *