Você está tentando s ubstitutar um padrão para outro, então você precisa usar o comando sed s
, do formulário
's/pattern/replacement/'
Além disso, você precisa escapar de todos os caracteres /
dentro do padrão ou das strings de substituição (no seu caso, "America\/Mexico_City"
). Então
sed 's/^;date\.timezone[[:space:]]=.*$/date.timezone = "America\/Mexico_City"/'
Como alternativa, você pode evitar barras de escape usando um delimitador de substituição de padrão diferente, como s#pattern#replacement#
, por exemplo,
sed 's#^;date\.timezone[[:space:]]=.*$#date.timezone = "America/Mexico_City"#'