Bonjour,
Je ne suis pas un habitue de sed, j'espere que vous pourrez m'aider ou me diriger sur le bon outil.
J'ai un fichier de configuration sous cette forme :
Mon but est de remplacer le valeur none (balise Value) de hal.stdout par une autre valeur.
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
22
23
24
25
26
27
28 <Setting> <SettingName>hal.stdin</SettingName> <Identifier>STDIN</Identifier> <Type>UnquotedString</Type> <Value>none</Value> <DefaultValue>none</DefaultValue> <DestinationFile>system_h_define</DestinationFile> <Description>Slave descriptor of STDIN character-mode device. This setting is used by the ALT_STDIN family of defines in system.h.</Description> <Restrictions/> <Group>Common</Group> </Setting> <Setting> <SettingName>hal.stdout</SettingName> <Identifier>STDOUT</Identifier> <Type>UnquotedString</Type> <Value>none</Value> <DefaultValue>none</DefaultValue> <DestinationFile>system_h_define</DestinationFile> <Description>Slave descriptor of STDOUT character-mode device. This setting is used by the ALT_STDOUT family of defines in system.h.</Description> <Restrictions/> <Group>Common</Group> </Setting> <MemoryMap> <slaveDescriptor>main_mem</slaveDescriptor> <addressRange>0x00000000 - 0x007FFFFF</addressRange> <addressSpan>8388608</addressSpan> <attributes>memory</attributes> </MemoryMap>
Le soucis comme vous l'aurez compris c'est que le pattern <Value>*</Value> apparait partout, il faut donc tenir compte du contexte.
Comment pourrai-je faire avec sed ? Est-il l'outil qu'il me faut vu que sed travaille ligne par ligne, peut-etre que faire ce que je souhaite n'est pas possible.
Merci
Partager