zezefromkennington / bash

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hello World

Simple Hello World

Afficher du texte

#!/bin/bash

echo "Hello World"

Les différentes variables spéciales

Nom	fonction

$*	contient tous les arguments passés à la fonction
$#	nombre d'arguments
$?	code de retour de la dernière opération
$0	nom du script
$n	contient l'argument n, n étant un nombre
$!	contient le PID de la dernière commande lancée

Opérateurs de comparaison

Caractères       Significations
──────────	 ──────────────
   -eq	         est égal à
   -ne	         n'est pas égal à
   -gt	         est plus grand que
   -ge	         est plus grand ou égal à

Autres :

Caractères       Significations
──────────	 ──────────────

    = 		 initialisation d'une constante numérique2)
    == 		 est égal à
    != 		 une différence
    > 		 plus grand que
    >= 		 plus grand ou égal que
    < 		 plus petit que
    ⇐ 		 plus petit ou égal que

Opérateurs de test sur les fichiers

Peut servir pour différent script ^^

Opérateurs       Significations
──────────	 ──────────────
-e fichier 	Renvoie 0 si le fichier existe.
-d fichier 	Renvoie 0 si le fichier existe et est un répertoire.
-f fichier 	Renvoie 0 si le fichier existe et est un fichier 'normal'.
-w fichier 	Renvoie 0 si le fichier existe et est en écriture.
-x fichier 	Renvoie 0 si le fichier existe et est exécutable.
f1 -nt f2 	Renvoie 0 si f1 est plus récent que f2.
f1 -ot f2 	Renvoie 0 si f1 est plus vieux que f2. 

Exemple :

#!/bin/bash
 
echo -n "Nom du fichier :" && read fichier

if [ -e "$fichier" ]; 
     then
     echo "Le fichier existe"
     else
     echo "Le fichier n'existe pas ou alors il n'est pas dans le répertoire ainsi."
fi

Conditions

Condition [IF]

Les conditions sont écrites comme ça

#!/bin/bash

if (( kalm == 0xkalm ));
    then 
    echo "Kalm & les conditions de if."
 

Exemple IF

#!/bin/bash

echo -n "Voulez-vous un gâteau ? [O/N]: " && read gateau

if (( gateau == "O" ));
    then
    echo -n "Tenez un gâteau."
    
elif (( gateau == "N" ));
    then
    echo "Bah vous en aurez pas !"
    exit 1
fi

Condition [ELSE]

En général, la condition else, est utilisée en cas d'erreur entrée dans le champ

if (( pseudo == kalm ));
        then
        echo "Bonjour $pseudo"
        else 
        echo "Pseudo incorrect"
fi 

Variable

Variable [Bool]

En bash, la variable booléenne est comme dans les autres langages mais nous n'avons pas besoin de préciser < bool > comme en c# par exemple, on pourrait mais on en a pas besoin

Exemple :

#!/bin/bash

kalm=true

if [ "$kalm" = true ] ; 
    then
    echo "C'est vrai !"
fi

Les boucles

Boucle [FOR] Répétitif

Boucle qui se répète 5 fois, puis s'arrête.

#!/bin/bash

for KALM in 1 2 3 4 5 .. N
do
	echo "kalm"
	echo "le meilleur"
	echo "développeur"
done

Boucle [FOR] Infini

#!/bin/bash

for (( ; ; ))
do
   echo "La boucle est infini, tu peux faire ctrl + c pour l'arrêter"
done

Regroupement d'informations

Regrouper plusieurs commandes ou textes

#!/bin/bash

info="je m'appelle 0xkalm"
age="j'ai 14 ans"



print_information() {
echo $info
echo $age
}

print_information

Les options

Exemple : ./programme.sh -s [file], en exécutant ça, il supprimera le fichier indiqué

#!/bin/bash

print_notfound() {
echo "Cette option n'existe pas."
}

print_help() {
echo "Usage: $0 -$OPTIONS"
}

while getopts "k:a:l:mox?:" OPTIONS; do 
   case ${OPTIONS} in
      k ) file=$OPTARG && rm -rf $file && reset && echo "$file a bien été supprimé" ;;
      a ) ;;
      l ) ;;
      m ) ;;
      o ) ;;
      x ) ;;
      ? ) clear && print_notfound; exit 0;;
   esac
done


if (( file == 'a-zA-Z0-9' ))
     then 
     echo "Suppression de $file"
     fi

Les effets, les couleurs.

Comme toute personne, tout le monde a voulu faire un script avec différentes couleurs pour différenciés quelque chose de spéciale dans le script ou bien autre chose ou bien pour faire joli.


toute commande sous linux, il faut utiliser une syntaxe par défaut et y donner quelques paramètres. Pour les couleurs c’est le même principe.

echo -e '\033[A;B;Cm toto \033[0m'

Dans la commande ci-dessus, nous pouvons constater qu’il y a 3 paramètres présents: A, B et C..

A = un effet affecté au texte affiché 
B = à la couleur du texte 
C : identifie la couleur du fond du texte affiché

Et enfin on termine avec

\033[0m 

qui indique au terminal de revenir aux couleurs définies par défaut.

Effets :

Code	Effet
────    ─────
0	Normal
1	Gras
21	Non-gras
2	Sombre
22	Non-sombre
3	Italique
23	Non-italique
4	Souligné
24	Non-souligné
5	Clignotant
25	Non-clignotant
7	Inversé
27	Non-inversé
8	Invisible
28	Non-invisible
9	Barré
29	Non-barré

Couleurs

Couleur texte  Couleur fond     Couleur	
─────────────  ──────────── ────────────── 
      30	     40	         Noir
      31	     41          Rouge
      32             42          Vert
      33             43		 Jaune
      34             44		 Bleu
      35             45		 Magenta
      36             46          Cyan
      37             47          Blanc

Exemple :

 echo -e "\033[3;31;30m 0xkalm \033[1;34m est\033[9;33m passionné par l'infosec \033[0m"

About

License:Other


Languages

Language:Shell 100.0%