Bonjour,
Je cherche a créé une fonction récursive qui pourrai créé des répertoires ou autre chose en fonction d'une profondeur.

Voici mon code actuel:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
 
#!/bin/sh
 
nbdir=3
depth=4
if [ $1 ];then cd $1;else exit 1;fi
 
dir=''
 
d=0
i=1
j=1
k=1
maketree(){
echo $d
if [ $d -lt $depth ];then d=$(($d+1));echo "do"$d;k=1;dirk='';else echo "exit";exit 0;fi;
 
 
i=1;while [ $i -le $nbdir ];do
 
	nbi=$(echo "000"$i);
	dir='dir.'$nbi;
	if [ $d -eq 1 ];then
	echo "nbdiri"$i
 
	dir=$dir
	echo $dir
	else
	j=1;while [ $j -le $nbdir ];do
 
		echo 'nbdirj'$j;nbj=$(echo "000"$j);dirr='dir.'$nbj;
 
		dirr=$dir/$dirr;
		echo 'nbdirk'$k;nbk=$(echo "000"$k);dirk='dir.'$nbk;
		dirr=$dirr/$dirk
 
		echo $dirr;
 
		echo $j
		echo $k
		j=$(($j+1))
		if [ $j -gt $nbdir ];then k=$(($k+1));fi
 
 
	done
 
	fi
	i=$(($i+1));
 
done
echo "maketree";maketree;
 
 
}
 
 
pwd
maketree
Mon problème est qu'il ne supporte pas une profondeur supérieur a 3.

Peut être je m'y prend mal.

Merci d'avance pour vos réponse.