2016-12-29 11:25:39 +01:00
|
|
|
**Cette page a été importée automatiquement de notre ancien wiki mais n'a pas encore été révisée.**
|
|
|
|
|
|
|
|
# Astuces Bash
|
|
|
|
|
|
|
|
~~~
|
|
|
|
function hello { echo Hello; echo $1; }
|
|
|
|
~~~
|
|
|
|
|
|
|
|
## Raccourcis
|
|
|
|
|
|
|
|
~~~
|
|
|
|
Ctrl+d : quitte le terminal courant
|
|
|
|
Ctrl+a : aller en début de ligne
|
|
|
|
Ctrl+e : aller en fin de ligne
|
|
|
|
Ctrl+k : effacer (coupe) du curseur à la fin de la ligne
|
|
|
|
Ctrl+u : effacer (coupe) du début de ligne au curseur
|
|
|
|
Ctrl+y : colle la partie précédemment coupée
|
|
|
|
Ctrl+r : rechercher parmi l'historique
|
|
|
|
Ctrl+s : freeze l'affichage de l'output
|
|
|
|
Ctrl+q : défreeze l'affichage de l'affichage de l'output
|
|
|
|
Ctrl+t : inverse les caractères autour du curseur
|
|
|
|
Ctrl+c : annule la ligne en cours et passer sur une nouvelle ligne vide
|
|
|
|
Ctrl+z : suspend la tâche en cours
|
|
|
|
ctrl+l : efface/rafraichit l'écran
|
|
|
|
ctrl+x ctrl+e : édite la ligne dans $EDITOR
|
|
|
|
alt+effacer : Efface un mot à gauche du curseur
|
|
|
|
alt+d : Efface un mot à droite du curseur
|
2017-03-15 11:01:46 +01:00
|
|
|
~~~
|
|
|
|
|
|
|
|
# Script
|
|
|
|
|
2017-03-15 11:10:09 +01:00
|
|
|
## Variables
|
|
|
|
|
|
|
|
### Initialiser
|
|
|
|
|
|
|
|
~~~{.bash}
|
|
|
|
var=
|
|
|
|
~~~
|
|
|
|
|
|
|
|
En readonly <=> constante
|
|
|
|
|
|
|
|
~~~{.bash}
|
|
|
|
readonly var="pas touche"
|
|
|
|
~~~
|
|
|
|
|
|
|
|
### Protéger
|
|
|
|
|
|
|
|
~~~{.bash}
|
|
|
|
[ -n "${var}" ] && true
|
|
|
|
#et surtout pas
|
|
|
|
[ -n $var ] && false
|
|
|
|
#car si var est vide, l'expression sera équivalente à [ -n ] => erreur de syntaxe
|
|
|
|
~~~
|
|
|
|
|
|
|
|
~~~{.bash}
|
|
|
|
echo $var "joue au ${foo}t"
|
|
|
|
#et surtout pas
|
|
|
|
echo $var "joue au $foot"
|
|
|
|
#car sinon c'est bien le contenu de la variable $foot qui sera remplacé et non $foo
|
|
|
|
~~~
|
|
|
|
|
2017-03-15 11:01:46 +01:00
|
|
|
## Récupérer tout stdin dans une variable
|
|
|
|
|
|
|
|
### Complet
|
|
|
|
|
|
|
|
~~~{.bash}
|
|
|
|
var="$(cat <&0)"
|
|
|
|
#ou
|
|
|
|
var="$(cat -)"
|
|
|
|
~~~
|
|
|
|
|
|
|
|
### Ligne par ligne
|
|
|
|
|
|
|
|
~~~{.bash}
|
|
|
|
var=
|
|
|
|
while read ligne
|
|
|
|
do
|
2017-03-15 11:10:09 +01:00
|
|
|
var="${var}${ligne}"
|
2017-03-15 11:01:46 +01:00
|
|
|
done <&0
|
2016-12-29 11:25:39 +01:00
|
|
|
~~~
|