En regardant la sortie de env
, j'ai remarqué qu'il y a aussi la fonction suivante.
BASH_FUNC_mc%%=() { . /usr/share/mc/mc-wrapper.sh
}
Le contenu du fichier /usr/share/mc/mc-wrapper.sh est le suivant.
MC_USER=`id | sed 's/[^(]*(//;s/).*//'`
MC_PWD_FILE="${TMPDIR-/tmp}/mc-$MC_USER/mc.pwd.$$"
/usr/bin/mc -P "$MC_PWD_FILE" "$@"
if test -r "$MC_PWD_FILE"; then
MC_PWD="`cat "$MC_PWD_FILE"`"
if test -n "$MC_PWD" && test -d "$MC_PWD"; then
cd "$MC_PWD"
fi
unset MC_PWD
fi
rm -f "$MC_PWD_FILE"
unset MC_PWD_FILE
Que %%
signifient les caractères dans le nom de la fonction? En font-ils la fonction invoquée dans des cas spécifiques, ou me permettent-ils de l'appeler différemment des autres fonctions?
J'utilise openSUSE 42.3, avec la version Bash 4.3.42 (1) -release (x86_64-suse-linux-gnu), si cela fait une différence.
la source
=
signe égal là-bas après%%
! Ce qui provoque une affectation là-bas.env
la définition de la fonction a été imprimée.