using sed to replace a key/value in a yaml file

Viewed 10236

I have a yaml file that I need to update using a sed command in a script. Here is the file:

> server_options:
>     key1: value1
>     key2: value2
>     key3: value3
>     key4: value4
>     
> 
> client_options:
>     key5: value5
>     key6: value6
>     key2: value8
>     key3: value3
>     # key4: value4
>     # key7: value7

The output should be:

> server_options:
>     key1: value1
>     key2: xxx
>     key3: value3
>     key4: yyy
>     
> 
> client_options:
>     key5: value5
>     key6: value6
>     key2: value8
>     key3: value3
>     # key4: value4
>     # key7: value7

The keys are pre-fixed by a tab and I just wan't to update the value for the first occurrence of key2 and key4. Thanks for the help in advance!

1 Answers
Related