[[.|retour]]
====== Étude du démarrage de bash ======
Démarrez l'ordinateur ,mettez votre login et mot de passe
Restez dans le répertoire de l'utilisateur
**Pour Information**, on travaille en terminal sans X avec une Debian Etch
===== Le fichier .bash_profile =====
Au départ d'une session , le bash lance .bash_profile
Commençons par le visualiser
==== Affichage avec cat et sed ====
Pour afficher le fichier .bash_profile : .... .bash_profile
Les lignes qui commencent par # sont des lignes de commentaires
Que fait la commande cat .bash_profile |sed '/^#/d' .......
Que fait la commande cat .bash_profile |sed '/^$/d' .......
Que font les 2 commandes associées cat .bash_profile |sed '/^#/d' |sed '/^$/d' .......
Dans un terminal, on peut remplacer cat par less pour visualiser des fichiers trop long,
==== La première commande ====
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
Cette commande teste l'existence dans le répertoire de l'utilisateur** ~**, du fichier caché commence par **"."** .bashrc
Si il existe il le lance . ~/.[[bashrc|bashrc]]
~ correspond à $HOME soit /home/nom_de_l_utilisateur
. en début de nom, le fichier est caché visible avec ls -a
. dans un script correspond à source, exécute le fichier donné en argument, ici l'argument est ~/.bashrc.
Correspond à un include en C, le fichier est inclus et exécuté.
Vérifiez l'existence de .bashrc avec la commande ls ....
==== La deuxième commande ====
Elle ajoute le répertoire bin de l'utilisateur dans le chemin par défault PATH
if [ -d ~/bin ]; then
PATH=~/bin:${PATH}
fi
Affichez votre chemin par défaut PATH avec ... $PATH
Créez un repertoire bin avec ...
Relancez avec ...
Retestez le chemin par défaut PATH
==== Le chemin PATH ====
Il permet de mettre directement le nom de l'application sans son chemin.
Exemple pour afficher .bash_profile, on utilise la commande : //cat .bash_profile//
Pour connaître où est la commande cat :// which cat//
réponse .......... qui se situe dans le répertoire ..... qui appartient au chemin $PATH
==== Extra UMASK ====
umask définit les droits des fichiers
UMASK 022 définit :
* 0 : Tous les droits pour l'utilisateur, pas de masque
* 22 : Groupe et autre , pas de droits en écriture
avec ce masque les fichiers auront des droits 644 par défaut et les dossiers 755.
Pour connaître le fichier qui gère umask :
grep -i ^umask /etc/* 2>/dev/null
-i : .................
'' ^umask '' : la ligne ................
2>/dev/null ne pas gérer les erreurs : permission non accordée , etc
==== De l'aide sur une commande bash ====
Exemple de l'aide sur la commande grep : **man grep**
Certaines commandes sont des commandes internes au batch
Exemple **man source** : //no manual entry for source//
On vérifie avec la commande type; **type source** : //source is a shell builtin//
En anglais **help source**
En français, il faut aller chercher l'information dans le man bash-builtins
Tapez : **man bash-builtins**
Une fois la commande lancée, tapez **/^ *source ** pour rechercher source, dans certains cas, il faudra faire **n** , pour aller à l'occurence suivante.