Perl línea de comando multi-línea reemplazar

Estoy tratando de reemplazar el texto en un archivo de varias líneas usando la línea de comando perl. Estoy usando Ubuntu Natty.

Abajo está el contenido de mi archivo de texto (llamado test.txt):

[mysqld]
#
# * Basic Settings
#

#
# * IMPORTANT
#   If you make changes to these settings and your system uses apparmor, you may
#   also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
#

user            = mysql
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
skip-external-locking

Debajo está mi comando perl:

perl -i -pe "s/(\[mysqld\][^\^]+)/\1\nsometext/g" test.txt

in embargo, en lugar de reemplazar todo el texto en el archivo, a continuación es lo que termino con:

[mysqld]

sometext#
# * Basic Settings
#

#
# * IMPORTANT
#   If you make changes to these settings and your system uses apparmor, you may
#   also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
#

user            = mysql
socket          = /var/run/mysqld/mysqld.sock
port            = 3306
basedir         = /usr
datadir         = /var/lib/mysql
tmpdir          = /tmp
skip-external-locking
#

Probé Regex en RegexBuddy para Perl y coincide con todo en el archivo de texto, pero por alguna razón no funciona usando perl en la línea de comandos.

Agradecería un poco de ayuda.

Gracias por adelantado

Respuestas a la pregunta(4)

Su respuesta a la pregunta