Extraire une chaine de caractére
Résolu
CYG
-
CYG -
CYG -
Bonjour,
j ai vraiment besoin de votre aide, mon probléme est comme suit:
j ai créer un fichier temp.sh, qui va être exécuté par shell sous cygwin:
< cd répértoire1
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire2
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire3
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire4
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire5
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire6
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire7
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase>
le probléme c est que X,Y varie d une ligne à une autre, c est deux valeurs se trouvent dans un fichier appelé "interferogram.out" à l intérieur du répértoire1 pour la premiére ligne, répértoire2 pour la deuxiéme ligne et ainsi de suite
un extrait du fichier "interferogram.out"
.
.
.
*******************************************************************
*_Start_interfero:
*******************************************************************
Data_output_file: cint_out
Data_output_format: complex_real4
Data_output_file_real_interferogram: int_out
Data_output_format_real_interferogram: real4
Flatearth correction subtracted: no
First_line (w.r.t. original_master): 8866
Last_line (w.r.t. original_master): 16650
First_pixel (w.r.t. original_master): 2790
Last_pixel (w.r.t. original_master): 3957
Multilookfactor_azimuth_direction: 5
Multilookfactor_range_direction: 1
Number of lines (multilooked): 1557
Number of pixels (multilooked): 1168
*******************************************************************
.
.
.
par exemple pour X et Y de la premiére ligne( le premier répértoire) sont respectivement 1557(ligne 54) et 1168(ligne55).
vous avez des propositions?
merci d avance;
CYG
j ai vraiment besoin de votre aide, mon probléme est comme suit:
j ai créer un fichier temp.sh, qui va être exécuté par shell sous cygwin:
< cd répértoire1
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire2
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire3
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire4
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire5
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire6
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase
cd ../répértoire7
cpxfiddle -w X -q phase -o float -f cr4 -l1 -L Y -p X diff.filt > diff.filt.phase>
le probléme c est que X,Y varie d une ligne à une autre, c est deux valeurs se trouvent dans un fichier appelé "interferogram.out" à l intérieur du répértoire1 pour la premiére ligne, répértoire2 pour la deuxiéme ligne et ainsi de suite
un extrait du fichier "interferogram.out"
.
.
.
*******************************************************************
*_Start_interfero:
*******************************************************************
Data_output_file: cint_out
Data_output_format: complex_real4
Data_output_file_real_interferogram: int_out
Data_output_format_real_interferogram: real4
Flatearth correction subtracted: no
First_line (w.r.t. original_master): 8866
Last_line (w.r.t. original_master): 16650
First_pixel (w.r.t. original_master): 2790
Last_pixel (w.r.t. original_master): 3957
Multilookfactor_azimuth_direction: 5
Multilookfactor_range_direction: 1
Number of lines (multilooked): 1557
Number of pixels (multilooked): 1168
*******************************************************************
.
.
.
par exemple pour X et Y de la premiére ligne( le premier répértoire) sont respectivement 1557(ligne 54) et 1168(ligne55).
vous avez des propositions?
merci d avance;
CYG
A voir également:
- Extraire une chaine de caractére
- Extraire une video youtube - Guide
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Extraire le son d'une vidéo - Guide
- Caractere speciaux - Guide
1 réponse
Salut,
Une solution...
Une solution...
cd répértoire1 X=$(grep "Number of lines" interferogram.out | grep -o '[0-9][0-9]*') Y=$(grep "Number of pixels" interferogram.out | grep -o '[0-9][0-9]*') cpxfiddle -w "$X" -q phase -o float -f cr4 -l1 -L "$Y" -p "$X" diff.filt > diff.filt.phase cd ../répértoire2 X=$(grep "Number of lines" interferogram.out | grep -o '[0-9][0-9]*') Y=$(grep "Number of pixels" interferogram.out | grep -o '[0-9][0-9]*') cpxfiddle -w "$X" -q phase -o float -f cr4 -l1 -L "$Y" -p "$X" diff.filt > diff.filt.phase cd ../répértoire3 X=$(grep "Number of lines" interferogram.out | grep -o '[0-9][0-9]*') Y=$(grep "Number of pixels" interferogram.out | grep -o '[0-9][0-9]*') cpxfiddle -w "$X" -q phase -o float -f cr4 -l1 -L "$Y" -p "$X" diff.filt > diff.filt.phase cd ../répértoire4 etc.Tu peux aussi employer à la place de "grep" :
Y=$(sed -n '/Number of pixels/ s/[^0-9]//gp' interferogram.out);-))
CYG