OVH Cloud OVH Cloud

Parcour de variables indicees

5 réponses
Avatar
lepierot
Bonjour, j'ai besoin d'un script pour creer des pipes nommés pour
ensuite faire des actions (export oracle compressés).

voila l'algo :

debut du script:

PIPE1=fichier1
FILE1=fichier1.Z
PIPE2=
...
PIPEN=fichierN
FILEN=fichierN.Z

for i in 1 ... N
do
mknode PIPE$i p
--appel de programmes oracle avec les variables PIPEi et FILEi
done

fin du script :

5 réponses

Avatar
Zakath
Pierre HIRTH wrote:
Bonjour, j'ai besoin d'un script pour creer des pipes nommés pour
ensuite faire des actions (export oracle compressés).

voila l'algo :


[snip]

Bonjour,

je suis loin d'être un expert en bash, mais je ferai quelque chose
comme :

i=0
while [ $i -lt N ] ; do
PIPE$i = fichier$i
FILE$i = fichier$i.Z
i=$[$i+1]
done

i=0
while [ $i -lt N ] ; do
mknode PIPE$i p
appel oracle
i=$[$i+1]
done


En espérant ne pas dire de trp grosses bêtises

Avatar
Stephane Chazelas
2004-09-24, 01:39(-07), Pierre HIRTH:
Bonjour, j'ai besoin d'un script pour creer des pipes nommés pour
ensuite faire des actions (export oracle compressés).

voila l'algo :

debut du script:

PIPE1=fichier1
FILE1=fichier1.Z
PIPE2 > ...
PIPEN=fichierN
FILEN=fichierN.Z

for i in 1 ... N
do
mknode PIPE$i p
--appel de programmes oracle avec les variables PIPEi et FILEi
done
[...]


i=1
while [ "$i" -le "$N" ]; do
eval "pipe=$PIPE$i file=$FILE$i"
mknode -- "$pipe"
--appel de programmes oracle avec les variables $pipe et $file
i=$((i + 1)) # ou i=`expr "$i" + 1` avec le Bourne shell
done

--
Stephane

Avatar
lepierot
Stephane Chazelas wrote in message news:...
2004-09-24, 01:39(-07), Pierre HIRTH:
Bonjour, j'ai besoin d'un script pour creer des pipes nommés pour
ensuite faire des actions (export oracle compressés).

voila l'algo :

debut du script:

PIPE1=fichier1
FILE1=fichier1.Z
PIPE2 > > ...
PIPEN=fichierN
FILEN=fichierN.Z

for i in 1 ... N
do
mknode PIPE$i p
--appel de programmes oracle avec les variables PIPEi et FILEi
done
[...]


i=1
while [ "$i" -le "$N" ]; do
eval "pipe=$PIPE$i file=$FILE$i"
mknode -- "$pipe"
--appel de programmes oracle avec les variables $pipe et $file
i=$((i + 1)) # ou i=`expr "$i" + 1` avec le Bourne shell
done


Quand J'execute le script ci-dessous en KSH sous AIX j'obtiens :
#!/usr/bin/ksh
N=5
i=1
while [ "$i" -le "$N" ]; do
eval "pipe=$PIPE$i file=$FILE$i"
echo "test" $pipe $file
i=$((i + 1)) # ou i=`expr "$i" + 1` avec le Bourne shell
done

Resultat :

test
test
test
test
test

Je ne comprends pas!!!


Avatar
Stephane Chazelas
2004-10-22, 06:25(-07), Pierre HIRTH:
[...]
Quand J'execute le script ci-dessous en KSH sous AIX j'obtiens :
#!/usr/bin/ksh
N=5
i=1
while [ "$i" -le "$N" ]; do
eval "pipe=$PIPE$i file=$FILE$i"
echo "test" $pipe $file
i=$((i + 1)) # ou i=`expr "$i" + 1` avec le Bourne shell
done

Resultat :

test
test
test
test
test

Je ne comprends pas!!!


Tu n'as pas defini les fichiers PIPEn et FILEn !

PIPE1=fichier1
FILE1=fichier1.Z
PIPE2 ...
PIPEN=fichierN
FILEN=fichierN.Z

Quand tu ne comprends pas, essaie de mettre un "set -x" au debut
de ton script. Des fois, ca eclaire.

--
Stephane

Avatar
lepierot
Stephane Chazelas wrote in message news:...
2004-09-24, 01:39(-07), Pierre HIRTH:
Bonjour, j'ai besoin d'un script pour creer des pipes nommés pour
ensuite faire des actions (export oracle compressés).

voila l'algo :

debut du script:

PIPE1=fichier1
FILE1=fichier1.Z
PIPE2 > > ...
PIPEN=fichierN
FILEN=fichierN.Z

for i in 1 ... N
do
mknode PIPE$i p
--appel de programmes oracle avec les variables PIPEi et FILEi
done
[...]


i=1
while [ "$i" -le "$N" ]; do
eval "pipe=$PIPE$i file=$FILE$i"
mknode -- "$pipe"
--appel de programmes oracle avec les variables $pipe et $file
i=$((i + 1)) # ou i=`expr "$i" + 1` avec le Bourne shell
done


Non non, desolé je me suis trompé ca marche parfaitement.