Bonjour à tous.
J'aimerai utiliser un case plutôt que cette cascade de if et faire de la recherche de motif sur mot entier pour différentier MASTER et MASTER_SERVICE par exemple :
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 awk -v depot=$DEPOT -v goroco=$CHAINE -v ordre=99 -v comm="" '{ if ( $1 ~ "P_FE_MASTER.Racines" ) { ordre = 1 ; comm="_" } else if ( $1 ~ "P_FE_MASTER_SERVICE" ) { ordre = 1 ; comm="_" } else if ( $1 ~ "P_PRD_COM" ) { ordre = 2 ; comm="" } else if ( $1 ~ "P_PRD_ATT" ) { ordre = 3 ; comm="" } else if ( $1 ~ "P_PRD_FEX" ) { ordre = 4 ; comm="" } else if ( $1 ~ "P_PRD_EXT" ) { ordre = 5 ; comm="" } else if ( $1 ~ "P_PRD_BEF" ) { ordre = 6 ; comm="" } else if ( $1 ~ "P_PRD_LIF" ) { ordre = 7 ; comm="" } else if ( $1 ~ "P_PRD_BQC" ) { ordre = 8 ; comm="" } else if ( $1 ~ "P_FE_MASTER_TABLE" ) { ordre = 9 ; comm="" } else if ( $1 ~ "P_FE_MASTER_PROC" ) { ordre = 10 ; comm="" } else if ( $1 ~ "P_FE_MASTER" ) { ordre = 11 ; comm="" } else if ( $1 ~ "P_FE_SLAVE_TABLE" ) { ordre = 12 ; comm="" } else if ( $1 ~ "P_FE_SLAVE_PROC" ) { ordre = 13 ; comm="" } else if ( $1 ~ "P_FE_SLAVE.Racines" ) { ordre = 1 ; comm="_" } else if ( $1 ~ "P_FE_SLAVE" ) { ordre = 14 ; comm="" } else { cible = "package non defini" ; ordre = 99 ; comm="#" } print ordre "!" comm "INSTALLE |" $1 "|" depot "|" goroco }'
Partager