Pages : 1
#1 Le 17/05/2020, à 15:02
- joe217
tableau script
Bonjour,
j'aimerais faire un tableau, dont la définition en zsh est tab1=(). mais ,je sais pas comment l'utiliser et je trouve rien a ce sujet ?
On doit affecter chaque case du tableau ”..”
Exemple de ce que doit produire le script :>
./parcours.sh 2
.. ..
.. ..
j'ai fais ça:
#!/bin/zsh
for x in $(seq 1 $1)
do
for y in $(seq 1 $2)
do
P=..
printf "%s " $P
done
echo
done
j'obtiens:
.. ..
.. ..
ça marche avec 2 mais pas avec 10 par exemple car au lieu d'avoir/
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
j'ai
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
merci
Hors ligne
#2 Le 17/05/2020, à 15:18
- joe217
Re : tableau script
je dois prendre que les 2 premieres lignes; je dois utiliser
head -n 2 | printf ..
mais ça ne marche pas
Hors ligne
#3 Le 17/05/2020, à 15:35
- pingouinux
Re : tableau script
Bonjour,
Les résultats que tu montres en #1 ne sont pas cohérents avec ton script, et la façon dont tu l'appelles.
$ ./parcours.sh 2 10
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
Hors ligne
#4 Le 17/05/2020, à 16:07
- Watael
Re : tableau script
for ((x=1;x<=$1;x++))
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#5 Le 17/05/2020, à 16:44
- joe217
Re : tableau script
Bonjour,
Les résultats que tu montres en #1 ne sont pas cohérents avec ton script, et la façon dont tu l'appelles.$ ./parcours.sh 2 10 .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. ..
oui j'ai oublié de modifier le 2 dans le 2e for c'est encore un 1
for x in $(seq 1 $1)
do
for y in $(seq 1 $1)
Hors ligne
#6 Le 17/05/2020, à 16:49
- Watael
Re : tableau script
$ for ((x=1;x<=$1;x++)); do printf '.. %.s' $(seq 1 $(($2-1))); echo '..'; done
Dernière modification par Watael (Le 17/05/2020, à 16:49)
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#7 Le 18/05/2020, à 14:18
- joe217
Re : tableau script
$ for ((x=1;x<=$1;x++)); do printf '.. %.s' $(seq 1 $(($2-1))); echo '..'; done
bonjour,
pourquoi tu as mis un . après le %
avec ton code ;
j'obtiens
zsh table.sh 10
....
....
....
....
....
....
....
....
....
....
je voulais avoir ça:
.. .. .. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. .. .. ..
peu importe le parmaètre passé je dois toujours avoir 2 lignes
merci
Dernière modification par joe217 (Le 18/05/2020, à 14:19)
Hors ligne
#8 Le 18/05/2020, à 16:30
- Watael
Re : tableau script
tu veux un tableau à deux dimensions : il manque donc un argument sur ta ligne de commande.
le point, c'est pour ne pas afficher les arguments (1 2 3 ...).
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
Pages : 1