Есть такой текст:
...
[AC]
icon=battery-charging
[AC][DPMSControl]
idleTime=3600
[AC][HandleButtonEvents]
lidAction=64
powerButtonAction=8
[Battery]
icon=battery-060
[Battery][DPMSControl]
idleTime=300
[Battery][HandleButtonEvents]
lidAction=64
powerButtonAction=16
[LowBattery]
icon=battery-low
[LowBattery][BrightnessControl]
value=30
[LowBattery][HandleButtonEvents]
lidAction=64
powerButtonAction=16
...
Я хочу обработать диапазон строк между:
[AC][HandleButtonEvents]
...
[.*
В этом диапазоне надо изменить значение powerButtonActions.
Я пытаюсь сделать так:
cat f.txt | sed /\[AC\]\[HandleButtonEvents\]/,/\[.*/s/powerButtonAction\s*=\s*.*/powerButtonAction=125/
Но получаю ошибку:
sed: -e выражение #1, символ 81: незавершенное адресное регулярное выражение
Вопрос: как правильно написать эту команду?