URL que codifica una cadena en un script bash

Estoy escribiendo un script de bash en el que estoy intentando enviar una variable de publicación, sin embargo, wget lo está tratando como múltiples URLS, creo que porque no está codificado por URL ... aquí está mi pensamiento básico

MESSAGE='I am trying to post this information'
wget -O test.txt http://xxxxxxxxx.com/alert.php --post-data 'key=xxxx&message='$MESSAGE''

Estoy recibiendo errores y alert.php no está obteniendo la variable de publicación, además de lo que está diciendo bastante

No puedo resolver No puedo resolver No puedo resolver intentando ... y así sucesivamente.

Mi ejemplo anterior es un ejemplo simple de sudo, pero creo que si puedo url codificarlo, pasaría, incluso probé php como:

MESSAGE='I am trying to post this information'
MESSAGE=$(php -r 'echo urlencode("'$MESSAGE'");')

pero php errores ... ¿alguna idea? ¿Cómo puedo pasar la variable en $ MENSAJE sin php ejecutarlo?

Respuestas a la pregunta(3)

Su respuesta a la pregunta