Je recherche le moyen mettre en rapport les éléments de mes variables, je m'explique (enfin j'essaye)
J'ai une variable $VAR1 qui contient ceci:
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
Domain Admins
La deuxième $VAR2 ceci:
drwxr-sr-x
drwxrwsr-x
drwxrwsr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
drwxr-sr-x
J'aimerai que le premier élément de la liste de ma variable 1 soit afficher en sortie avec le premier éléments de ma deuxième variable, comme ceci par exemple:
Domain Admins drwxr-sr-x
élément_2_VAR1 élément_2_VAR2
[...]
La seul sortie que j'arrive à avoir sont le contenu de la $VAR1 puis $VAR2.
Peut ont comme en Perl désigner les éléments d'une liste ($VAR1[#1]) ?
Merci de vos suggestion ;-)
p.s.: j'aimerai ne pas dériver vers un autre langage que bash (même perl :-) )
# Doc bash
Posté par jon . Évalué à 1.
# petit script bash
Posté par santos . Évalué à 1.
essaye de faire un script de ce genre :
#!/bin/bash
OUT=sortie.txt
cat /dev/null > $OUT
i=1
while [ $i -le $(echo $VAR1 | wc -l) ]
do
echo $(echo $VAR1 | head -$i | tail -1)" "$(echo $VAR2 | head -$i | tail -1) >> $OUT
i=$(expr $i + 1)
done
cat $OUT
Bonne chance !
@+
--
François
[^] # Re: petit script bash
Posté par santos . Évalué à 1.
# paste
Posté par castorpilot . Évalué à 2.
Je n'ai pas tres bien compris si tes variables sont des tableaux ou pas.
Si ce sont des tableaux, le commentaire numero 1 devrait t'aider àç utiliser la syntaxe bash pour les arrays.
Sinon, tu devrais pouvoir faire :
paste <(echo $var1) <(echo $var2)
# ma solution
Posté par Damien Lespiau (site web personnel) . Évalué à 1.
#!/bin/bash
var1="toto1 toto2 toto3"
var2="tata1 tata2 tata3"
tab_var1=($(echo $var1))
tab_var2=($(echo $var2))
for i in `seq 0 $[${#tab_var1[@]} - 1]`; do
printf "%-10s %s\n" ${tab_var1[i]} ${tab_var2[i]}
done
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.