Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2090 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  besoin d'aide sur script decopupe de variable [Resolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

besoin d'aide sur script decopupe de variable [Resolu]

n°237792
natwyn
liberer les kiwis
Posté le 18-03-2003 à 09:10:35  profilanswer
 

Alut a tous.
 
Bon pour ceux qui en font tout les jours, mon pb n'est pas compliqué.
Mais pour moi, ben j'arrive a penser a rien d'autre qu'un truc bien lourd.
 
donc. G une variable $VAR qui a comme valeur soit :  
" MAX(15)   MIN(5)   "
soit
"MIN(5) "
 
le truc c'est que j'aimerai a tout les coup recuperer la valeur du MIN : 5 dans ces exemple.
 
Bon avec du pipe de cut j'arrive a chopper la valeur mais C deja lourd. alors si je prends en compte le test du MAX ou MIN, on as mon usine a gaze pas belle :)
 
pi je vois pas trop en awk.
 
a votre bon coeur. merci.
 
edit : titre + causant :)


Message édité par natwyn le 19-03-2003 à 13:15:57

---------------
Les kiwis c'est bon! Mangez-en
mood
Publicité
Posté le 18-03-2003 à 09:10:35  profilanswer
 

n°237805
minusplus
Posté le 18-03-2003 à 09:50:07  profilanswer
 



[pts/2][09:55]manu@bassed6:~> a=" MAX(15)   MIN(5)   "
[pts/2][09:55]manu@bassed6:~> echo ">$a<"
> MAX(15)   MIN(5)   <
[pts/2][09:55]manu@bassed6:~> b=${a##*MIN(}; echo ${b%%)*}
5
[pts/2][09:56]manu@bassed6:~> a="MIN(5) "  
[pts/2][09:56]manu@bassed6:~> echo ">$a<"
>MIN(5) <
[pts/2][09:56]manu@bassed6:~>  b=${a##*MIN(}; echo ${b%%)*}
5
[pts/2][09:56]manu@bassed6:~>  

n°237806
Tomate
Posté le 18-03-2003 à 09:53:01  profilanswer
 

minusplus a écrit :



[pts/2][09:55]manu@bassed6:~> a=" MAX(15)   MIN(5)   "
[pts/2][09:55]manu@bassed6:~> echo ">$a<"
> MAX(15)   MIN(5)   <
[pts/2][09:55]manu@bassed6:~> b=${a##*MIN(}; echo ${b%%)*}
5
[pts/2][09:56]manu@bassed6:~> a="MIN(5) "  
[pts/2][09:56]manu@bassed6:~> echo ">$a<"
>MIN(5) <
[pts/2][09:56]manu@bassed6:~>  b=${a##*MIN(}; echo ${b%%)*}
5
[pts/2][09:56]manu@bassed6:~>  




 
vas y fe peter les explications  :whistle:

n°237807
natwyn
liberer les kiwis
Posté le 18-03-2003 à 09:58:58  profilanswer
 

ben ca a l'aire de marcher
 
j'essaye d'incruster ca ds mon scipt.
 
je comprends pas tout. mais ca me plais.
 
pareil que tomate si tu peux expliqué car la, je voie meme pas sur quoi faire un man pour trouver :)  :pt1cable:  
 
Merci  :jap:


---------------
Les kiwis c'est bon! Mangez-en
n°237808
Tomate
Posté le 18-03-2003 à 10:00:40  profilanswer
 

natwyn a écrit :

ben ca a l'aire de marcher
 
j'essaye d'incruster ca ds mon scipt.
 
je comprends pas tout. mais ca me plais.
 
pareil que tomate si tu peux expliqué car la, je voie meme pas sur quoi faire un man pour trouver :)  :pt1cable:  
 
Merci  :jap:  


 
man sh ou bash :D

n°237810
minusplus
Posté le 18-03-2003 à 10:02:07  profilanswer
 

man bash :o
 
 


       ${parameter#word}
       ${parameter##word}
              The word is expanded to produce a pattern just as in pathname expan-
              sion.   If the pattern matches the beginning of the value of parame-
              ter, then the result of the  expansion  is  the  expanded  value  of
              parameter with the shortest matching pattern (the ``#'' case) or the
              longest matching pattern (the ``##'' case) deleted.  If parameter is
              @  or *, the pattern removal operation is applied to each positional
              parameter in turn, and the expansion  is  the  resultant  list.   If
              parameter  is an array variable subscripted with @ or *, the pattern
              removal operation is applied to each member of the  array  in  turn,
              and the expansion is the resultant list.
 
       ${parameter%word}
       ${parameter%%word}
              The word is expanded to produce a pattern just as in pathname expan-
              sion.  If the pattern matches a trailing  portion  of  the  expanded
              value of parameter, then the result of the expansion is the expanded
              value of parameter with the shortest  matching  pattern  (the  ``%''
              case) or the longest matching pattern (the ``%%'' case) deleted.  If
              parameter is @ or *, the pattern removal  operation  is  applied  to
              each  positional  parameter in turn, and the expansion is the resul-
              tant list.  If parameter is an array variable subscripted with @  or
              *,  the  pattern  removal operation is applied to each member of the
              array in turn, and the expansion is the resultant list.

n°237811
Tomate
Posté le 18-03-2003 à 10:02:58  profilanswer
 


 
 
j en etais sur [:ddr555]

n°237817
natwyn
liberer les kiwis
Posté le 18-03-2003 à 10:19:24  profilanswer
 

heu!! ca marche en sh ca?
 
car j'arrive pas a le faire tourner.
 
Et j'ai pas de bash sur ces machines la moi. :-(


---------------
Les kiwis c'est bon! Mangez-en
n°237837
natwyn
liberer les kiwis
Posté le 18-03-2003 à 11:17:26  profilanswer
 

bon ben finalement voila ce que j'ai trouver.
 

Code :
  1. echo $VAR | awk -F"MIN" '{ print $2 }' | cut -d"(" -f2 | cut -d" )" -f1


 
C'est moins beau mais ca tourne.


---------------
Les kiwis c'est bon! Mangez-en
n°237841
Tomate
Posté le 18-03-2003 à 11:27:56  profilanswer
 

natwyn a écrit :

bon ben finalement voila ce que j'ai trouver.
 

Code :
  1. echo $VAR | awk -F"MIN" '{ print $2 }' | cut -d"(" -f2 | cut -d" )" -f1


 
C'est moins beau mais ca tourne.

:jap:

mood
Publicité
Posté le 18-03-2003 à 11:27:56  profilanswer
 

n°237853
zerod
atchoum !
Posté le 18-03-2003 à 11:52:19  profilanswer
 


$> perl
$a="MAX(45)   MIN(76)   ";
($b)=$a=~/^.*MIN\((.*[^\)])\).*$/;
print $b."\n";
76  
$>


 
ouarf ouarf ouarf  [:zerod]


Message édité par zerod le 18-03-2003 à 11:52:52
n°237855
Tomate
Posté le 18-03-2003 à 11:57:16  profilanswer
 

zerod a écrit :


$> perl
$a="MAX(45)   MIN(76)   ";
($b)=$a=~/^.*MIN\((.*[^\)])\).*$/;
print $b."\n";
76  
$>


 
ouarf ouarf ouarf  [:zerod]

:ouch:  :ouch:  
 
 

n°237879
minusplus
Posté le 18-03-2003 à 12:52:16  profilanswer
 

natwyn a écrit :

bon ben finalement voila ce que j'ai trouver.
 

Code :
  1. echo $VAR | awk -F"MIN" '{ print $2 }' | cut -d"(" -f2 | cut -d" )" -f1


 
C'est moins beau mais ca tourne.

ça tourne pas mon truc ?

n°237880
minusplus
Posté le 18-03-2003 à 12:54:11  profilanswer
 

zerod a écrit :


$> perl
$a="MAX(45)   MIN(76)   ";
($b)=$a=~/^.*MIN\((.*[^\)])\).*$/;
print $b."\n";
76  
$>


 
ouarf ouarf ouarf  [:zerod]


[pts/2][12:59]manu@bassed6:~> a=" MAX(15)   MIN(5)   "
[pts/2][13:00]manu@bassed6:~> echo $a | sed 's/.*MIN(\(.*\)).*/\1/'
5
[pts/2][13:00]manu@bassed6:~>  

n°237900
Tomate
Posté le 18-03-2003 à 13:32:12  profilanswer
 

minusplus a écrit :


[pts/2][12:59]manu@bassed6:~> a=" MAX(15)   MIN(5)   "
[pts/2][13:00]manu@bassed6:~> echo $a | sed 's/.*MIN(\(.*\)).*/\1/'
5
[pts/2][13:00]manu@bassed6:~>  




 
oh le malin  :whistle:

n°237904
natwyn
liberer les kiwis
Posté le 18-03-2003 à 13:39:54  profilanswer
 

minusplus a écrit :

ça tourne pas mon truc ?


 
 
ben non :-(
 
je suis en sh pas en bash.
 
dc soit ca viens de la soit C moi qui ai pas reussi ton truc.
 
enfin avec du cut/past j'ai un doute.
 
dc => ca marche pas en sh. et je voie bien la tête du type si je lui demande de mettre un bash sur sa machine de prod pour que mon script y tourne :) lol
pi y'en a pas qu'une de machine. y'en aurrait + dans les 200 :) et doit pas y'avoir bcp de bash d'installé :)
 
en tout cas merci.
J'ai garder ca dans un coin car sa me servirra sur mon linux chez moi a l'occaze.


---------------
Les kiwis c'est bon! Mangez-en
n°237908
minusplus
Posté le 18-03-2003 à 13:43:46  profilanswer
 

natwyn a écrit :


 
 
ben non :-(
 
je suis en sh pas en bash.
 

ah ui, pardon ! :o

n°237910
natwyn
liberer les kiwis
Posté le 18-03-2003 à 13:45:14  profilanswer
 

minusplus a écrit :


[pts/2][12:59]manu@bassed6:~> a=" MAX(15)   MIN(5)   "
[pts/2][13:00]manu@bassed6:~> echo $a | sed 's/.*MIN(\(.*\)).*/\1/'
5
[pts/2][13:00]manu@bassed6:~>  




 
mouarf j'avais pas vu celui la.
 
celui la est ok sur sh.
 
Mais dit, t'es humain toi?
t'est du coté obscure du shell toi :)
 
remarque avec un truc comme ca, j'aimerrai pas etre moi quand je reprends le truc dans 3 mois.  :pt1cable:   :pt1cable:  
 
deja la en 5 min j'ai pas encore tout compris :)   :jap:


---------------
Les kiwis c'est bon! Mangez-en
n°237918
Tomate
Posté le 18-03-2003 à 14:04:10  profilanswer
 

natwyn a écrit :


 
mouarf j'avais pas vu celui la.
 
celui la est ok sur sh.
 
Mais dit, t'es humain toi?
t'est du coté obscure du shell toi :)
 
remarque avec un truc comme ca, j'aimerrai pas etre moi quand je reprends le truc dans 3 mois.  :pt1cable:   :pt1cable:  
 
deja la en 5 min j'ai pas encore tout compris :)   :jap:  


 
c est juste des expressions regulieres avec sed ;)
 
ca rentre vite t inquiete :D


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  besoin d'aide sur script decopupe de variable [Resolu]

 

Sujets relatifs
[GNU/Linux] Découper un .mp3 avec un .cue (résolu)[GNU/Linux] Décompression de fichiers .ace (résolu)
Chroot apache et php [résolu]Installation d'un add-on à Dansguardian - Qui m'aide svp ??
[MDK9] Petit problème de montage de partition [Résolu]Can't locate module snd-card-1, Can't locate module ... [résolu]
resolu: urgent: question sur MlDonkey[résolu pour moi] autre probleme avec ALSA 0.9
Erreur de compile Gnome 2.2 [Résolu]Besoin d'aide pour un script: récupération de chaine de caractéres
Plus de sujets relatifs à : besoin d'aide sur script decopupe de variable [Resolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR