Как с помощью curl отправить POST-запрос c кучей текста

Мой изначальный подход:

curl --location --request POST 'http://dopo.st/posts' --data-raw '{query}' --silent --header 'Content-Type: text/markdown'

В query Alfred подставляет содержимое буфера обмена. Это обычно просто текст в Markdown. Иногда с кусками кода.

Проблема в том что это взрывается на специальных символах.

Второй нагугленный способ - сложить сначала все в файл, потом фигануть курлом из файла

pbpaste | cat - > /tmp/tmp-buffer && curl --location --request POST 'http://dopo.st/posts' --header 'Content-Type: text/markdown' -d @/tmp/tmp-buffer --silent | pbcopy

Но при этом пропадали символы переноса строки, что для маркдауна суперкритично

В итоге нашел нужную опцию: --data-binary

Итого:

pbpaste | cat - > /tmp/tmp-buffer && curl --location --request POST 'http://dopo.st/posts' --header 'Content-Type: text/markdown' --data-binary @/tmp/tmp-buffer --silent | pbcopy