Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
lien:bash_profile [2009/03/18 20:38] per |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== É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 pour des fichiers trop long, on peut remplacer cat par less pour visualiser | ||
- | |||
- | ==== La première commande ==== | ||
- | <code bash> | ||
- | if [ -f ~/.bashrc ]; then | ||
- | . ~/.bashrc | ||
- | fi | ||
- | </code> | ||
- | 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 | ||
- | |||
- | ~ 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 | ||
- | <code bash> | ||
- | if [ -d ~/bin ]; then | ||
- | PATH= ~/bin:${PATH} | ||
- | fi | ||
- | </code> | ||
- | 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// | ||
- | |||
- | Dans ce cas, il faut aller chercher l'information dans le man bash | ||
- | Tapez : **man bash** | ||
- | Une fois la commande lancée, tapez **/^commandes internes** vous trouverez les commandes internes du bash | ||
- | **/source** pour rechercher source à partir de l'endroit où vous êtes, dans certains cas, il faudra faire **n** , pour aller à l'occurence suivante. | ||