Bonsoir à tous,
J'ai des fois regretté de ne pas pouvoir enregistrer une liste de tous les binaires accessibles. Je me suis donc fait un petit script qui simule quasiment un double appui sur la touche tabulation, [tab][tab].
#!/bin/bash
#récupération des chemins
for onepath in `echo $PATH | tr ':' '\n'`
do
#on affiche les fichiers de chaque chemin
onedir=$(ls -1 `echo $onepath` 2>/dev/null)
# on concatène chaque chaine trouvée avec la chaine finale
allcmd=$(echo -e "${allcmd}${onedir}")
done
# si il y a exactement un argument
if (($# ==1))
then
#si on met -m comme argument 1
if (("$1" -eq "-m"))
then
sort=$(echo -e "$allcmd" | sort)
# permet de mettre des mots en gras dans la commande
less
export LESS="--RAW-CONTROL-CHARS"
# affichage manuel (via le less) avec tri
echo -e "\033[1mdéfilement manuel\033[0m\n$sort" | less
fi
# si on met -h comme argument 1
if (("$1" == "-h"))
then
# affichage de l'aide
echo -e "This script lists all your binaries with PATH constant \naccording to your rights, of course !\nusage: $0 [-h|-m]"
fi
else
# si pas d'argument
# affichage direct avec tri
echo -e "$allcmd" | sort
fi
# sortie normale
exit 0
Je ne vous l'expliquerai pas, il est suffisamment commenté