désolé de vous avoir embété, la ligne marche dans le script … j’avais oublié que j’avais rajouté un caractère en amont dans le code, et du coup ben ça enlevait ce dernier … donc je voyais pas de différence. :ane:
vraiment désolé
En tout cas merci pour cette aide, je vais m^eme vous offir en cadeau le script supra interessant, méga utile et surtout magnifiquement optimisé :whistle:
#! /bin/bash
if test -n "$1"; then
path=$1"/"
else
path="./"
fi
pos=">"
function liste ()
{
for file in `ls -1 $1`
do
echo $pos$file
if test -d $1$file; then
pos=$pos">"
liste $1$file"/"
pos=`expr "$pos" : "\(.*\).$"`
fi
done
}
if test "$aa" = /
then
path2=$path
else
path2=$PWD"/"$path
fi
echo "========"$path2
liste $path
PS : ben en fait ça fait juste une arborescence des fichiers, si ça se trouve y’a une fonction qui le fait mais j’avais envi de découvrir l’univers des scripts :super:
faut dire, je sais pas comment on gère les espaces, parce que j’avais essayé de mettre des espaces à la place du chevron mais ça marche pas, il doit pas s’occuper des espaces en début de ligne
function liste ()
{
for file in `ls -1 $1 | sed 's/ //'`
do
echo "${pos}${file}"
if test -d $1${file}; then
pos=`echo -e "$pos\t>"`
liste $1${file}"/"
pos=`expr "$pos" : "\(.*\).$"`
fi
done
}
for file in ls -1 $1[b] | sed 's/ //'[/b]
Élimine les espaces dans les noms de fichiers
pos=echo -e "$pos\t>"
Ajoute une tabulation entre les 2 "chevrons"
Non mais en fait maintenant au lieu de rajouter à la fin un chevron, je voudrai ajouter au debut une tabulation. Donc en reprenant ton code ce serrai :
pos=`echo -e "\t$pos"`
mais les tabulation en début de ligne ne semblent pas ^etre prisent en compte