Outils d'utilisateurs

Outils du Site


lien:bash:perso:bashrc

retour

Bash la configuration de l'utilisateur .bashrc

Ce fichier est appelé au démarrage par ……………… Pour voir le fichier : ………. .bashrc
Pour le voir sans commentaires et sans les lignes vides : ………………….
Regardez dans la page wiki bash_profile

Les commandes

# If not running interactively, don't do anything 
[ -z "$PS1" ] && return 

testez en ligne : echo $PS1
Puis ce petit script prompt.sh

#!/bin/bash 
echo "prompt $PS1" 

Exécutez ce script, conclusion ……….

Recherchez la signification de -z avec man test
Ainsi que return avec help en anglais ou man bash_builtins puis recherche de return avec ”/^ *return ” Expliquez ”/^ *return ” Donnez alors la signification de la ligne [ -z “$PS1” ] && return …………………

Gestion de l'historique des commandes

# don't put duplicate lines in the history. See bash(1) for more options 
export HISTCONTROL=ignoredups 

Lire man bash puis recherche ignoredups /ignoredups ou plus largement HISTCONTROL
On pourra voir l'ensemble des dernièrement commande avec : history
Comment afficher plus d'une page de history : ……………….

Astuce Pour rappelez une commande de l'historique sans la lancer
Supposons que vous avez dans l'historique la commande : arborescence /etc
si vous faîtes : !arbo:p , on vous proposera la commande arborescence /etc sans la lancer, un simple (flèche haut) puis entrée l'exécutera.

Les options du Shell

# check the window size after each command and, if necessary, 
# update the values of LINES and COLUMNS. 
shopt -s checkwinsize 

On recherchera dans man bash-builtins , shopt et checkwinsize
donnez alors le sens de la ligne : shopt -s checkwinsize ………………….

Gestion de l'affichage avec Less

# make less more friendly for non-text input files, see lesspipe(1) 
[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)" 

Permet de voir avec less des fichiers compressés entre autres.

Plus d'info Utiliser less comme visionneur universel http://forum.debian-fr.org/viewtopic.php?f=8&t=16714

Chroot

Permet de changer de répertoire racine.

# set variable identifying the chroot you work in (used in the prompt below) 
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then 
    debian_chroot=$(cat /etc/debian_chroot) 
fi 

tester la variable debian_chroot avec :
Proposer un test simple avec ls .. /etc/… : pour voir si /etc/debian_chroot existe et est lisible

Type de Terminal

# set a fancy prompt (non-color, unless we know we "want" color) 
case "$TERM" in 
xterm-color) 
    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' 
    ;; 
*) 
    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' 
    ;; 
esac 
 
 
# Comment in the above and uncomment this below for a color prompt 
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' 

Pour connaître le prompt choisi , tester votre terminal avec ……$TERM

Précisez votre PS1 : ……………………….

Le prompt comprend une partie caractères spéciaux et gestion des couleurs :

Les caractères spéciaux : man bash puis /invites pour rechercher INVITES

Exemple : donnez le sens de
\u ……..
\h ……..
\w ……..
\$ ……..

Pour les couleurs : echo -e '\E[COLOR1;COLOR2mDu texte vient ici.'

Couleur noir rouge vert jaune bleu magenta cyan blanc
Avant-plan 30 31 32 33 34 35 36 37
Arrière-plan 40 41 42 43 44 45 46 47

Pour xterm terminal de l'environnement graphique X

# If this is an xterm set the title to user@host:dir 
case "$TERM" in 
xterm*|rxvt*) 
    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"' 
    ;; 
*) 
    ;; 
esac 

Quel est votre PROMPT_COMMAND ?
testez PROMPT_COMMAND=“echo -n $(date +%H%M)”

ALIAS

# Alias definitions. 
# You may want to put all your additions into a separate file like 
# ~/.bash_aliases, instead of adding them here directly. 
# See /usr/share/doc/bash-doc/examples in the bash-doc package. 
 
#if [ -f ~/.bash_aliases ]; then 
#    . ~/.bash_aliases 
#fi 
# enable color support of ls and also add handy aliases 
if [ "$TERM" != "dumb" ]; then 
    eval "`dircolors -b`" 
    alias ls='ls --color=auto' 
    #alias dir='ls --color=auto --format=vertical' 
    #alias vdir='ls --color=auto --format=long' 
fi 
# some more ls aliases 
#alias ll='ls -l' 
#alias la='ls -A' 
#alias l='ls -CF' 

Enlevez les commentaires devant les 3 derniers alias
Testez avec ……..

Si vous voulez créer d'autres alias, quelles lignes devront être décommentées
Quel fichier devra être créé ?

Le complètement

# enable programmable completion features (you don't need to enable 
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile 
# sources /etc/bash.bashrc). 
if [ -f /etc/bash_completion ]; then 
    . /etc/bash_completion 
fi 

Lorsque vous compléter le nom d'un fichier ou d'une commande avec la touche <TAB>, vous utilisez le complètement automatique qui est validé ici.

lien/bash/perso/bashrc.txt · Dernière modification: 2009/03/31 00:14 par per