logo article ou rubrique
bash ( Bourne-Again shell)
en cours de rédaction
  • Remarque sur quelques expressions :
  • Un chemin est dit relatif, quand il n’est pas nécessaire, d’indiquer le chemin complet, de l’endroit où on se trouve dans l’arborescence il suffit de rajouter le chemin par rapport à ce même endroit.
  • Un chemin est dit absolu parce qu’à la vue de son chemin d’accès, en partant de la racine, on sait exactement où se trouve le fichier.
  • la racine étant /
  • Quand on crée un répertoire, le système crée automatiquement deux " fichiers " sous le répertoire, le premier est un " . ", qui représente le répertoire lui-même, le deuxième est un " .. " qui représente le répertoire père.
  • d’ou cd .. pour revenir à précédent
     

" bash" : une approche, rapide et succincte.

 
L’nterpréteur de commandes bash, permet entre autre : interaction, substitution, redirection , filtrage, copie, sauvegarde,calculs, informations systéme..et bien plus encore..
Il est devenu indispensable pour les administrateurs système et réseau.
 
Cet article suppose que l’on a déjà lue celui sur les principales commandes ici :
https://chezlagrenouille.fr/spip.php?article12
 

  • les commandes bash sont nombreuses sous linux, on notera les plus courantes :

cat. scp. su. read. sudo. ssh. rar. sed. rm. route. ping .pwd. mkdir. more. less. mount. mv.
ls. less. lsmod. lsof. iptable. init. id. hostname. grep. groups. gcc. env. exit. dd. dpkg. du.
cp. chmod. chown. crontab. cut. alias. awk. bzip2. echo .find. file.f disk .ftp....etc..etc...

 
*chacune de ces expressions ont une fonction (voir deux)
.
*hexdump - Affiche le contenu d’un fichier sous forme hexadécimale
*head - Affiche seulement les n premières lignes d’un fichier
*iptables - Montre la configuration de votre pare-feu
*ln - Établit un lien vers un fichier
*netstat voir maintenant ss- Obtient des informations sur les sockets à l’écoute et sur les ports ouverts
*ping - Indique si un ordinateur en particulier est fonctionnel sur un réseau
*ps - Affiche la liste des processus lancés à l’état actuel
 

  • quel est le fichier exécuté lorsque l’on entre le nom d’une commande
    le man which vous renseigne sur la commande
     $ man which :

 

bash vous donne des infos sur le nombre de vos répertoires et vos fichiers

  • pour avoir tous les répertoires et sous répertoires
  • nombre de fichiers et répertoires en chiffre : (en root pour tout avoir)
  • si on ne veut pas les fichiers avant /home il faut préciser /homo/momo
  • tous mes fichiers dans un répertoire nommé
  • pour avoir le nombre de fichier en chiffres dans le répertoire courant

 

  • autres exemples avec find et grep

     

Éditeurs

-{{VIM/}}

i         Passer dans le mode insertion
A         Ajouter en fin de ligne
:q         Quitter
:q!         Quitter sans enregistrer
:w         Enregistrer le fichier
:wq         Enregistrer et quitter
:x         Enregistrer (seulement en cas de modification) et quitter
:set paste         Passer en mode "collage"
Exemples         Action
u         Annuler la dernière opération
<control>-r         Rétablir la dernière opération annulée
.         Répéter la dernière opération d'édition
yy         Copier la ligne (4yy = 4 lignes)
dd         Couper la ligne (4dd = 4 lignes)
p         Coller après (P = insérer avant)
x         Effacer le caractère
dw         Effacer le texte jusqu'à la fin du mot
diw         Effacer le mot sous le curseur
/         Rechercher du texte
n         Rechercher l'occurence suivante
N         Rechercher l'occurence précédente
cw         Remplacer le texte jusqu'à la fin du mot
ciw         Remplacer le mot
C         Remplacer jusqu'en fin de ligne
.         Répéter la dernière opération d'édition
:%s/A/B/g         Remplacer tous (g) les A par des B
<control-w>-s         Diviser horizontalement
<control-w>-v         Diviser verticalement
<control-w>-w         Passer à la fenêtre suivante
<control-w>-n         Ouvrir un fichier vierge dans une nouvelle fenêtre
: tabnew nom_fichier         Ouvrir le fichier nom_fichier dans un onglet
<control-w>-q         Fermer la fenêtre

 

-{{nano}}
Le menu s'affiche en bas de page de l’éditeur

Ctrl + O : enregistrer le fichier (écrire)
Ctrl + X : quitter Nano.
Ctrl + W : rechercher dans le fichier
Ctrl + U : coller la ligne de texte que vous venez de couper

-{{gedit}}

-Simple éditeur avec menu déroulant

 
k

Les métacaractères

 
# ! ^ $ ( ) [ ] | ? + * \ ’ . $
* – (Étoile) replace n’importe quel caractère ou groupe de caractères.
 ? – (Point d’interrogation) replace un caractère.
\ – empêche l’interprétation spéciale d’un métacaractère.transforme un méta-caractère en littéral
‘ – tous les métacaractères inclus entre deux de ces caractères sont interprétés comme du texte.

` – les guillemets inversés force une interprétation de la chaîne de caractères incluse entre deux de ces caractères comme une commande.

. _ correspond à n’importe quel caractère

le caractère ^ marque le début d’une chaîne
le caractère $ marque la fin d’une chaîne.

quelques commandes
 

 

 

l’écriture des programmes shell (scripts shell)

 
Un script shell permet d’automatiser une série d’opérations.
La première ligne d’un script en shell bash commence toujours par :
# !/bin/sh
La commande en USER de

 

exemple : premies script bash

 

  • Je me place dans le repertoire et je tape :
  • On obtient la racine carré avec :