El título es explicativo en sí mismo, pandoc es un conversor de formato markup a un montón de formatos de salida:

Otros formatos markup (markdown, restructured text, asciidoc…) HTML4/5 Formatos e-book (EPUB, FictionBook2) Formatos de documentación (GNU TexInfo, Haddock markup) Formatos Roff Formatos TeX (LaTeX, ConTeXt) Formatos XML (DocBook, JATS, TEI) OPML Formatos de procesador de textos (docx, odt, open document xml) Jupyter notebooks (ipynb) Formatos Wiki markup (MediaWiki, DocuWiki…) Formatos de presentación (LaTeX Beamer, reveal.js…) PDF

Podemos encontrar el paquete en repositorios Debian, así que instalarlo es pan comido. Para convertir entre formatos:

pandoc --standalone --from markup --to html -o ejemplo.html ejemplo.md

El parámetro standalone indica que queremos generar un fichero html válido (incluyendo cabecera y cuerpo); los parámetros –from y –to indican los formatos de entrada y salida; el parámetro -o indica el fichero de salida.

Para convertir a PDF, necesitamos LaTeX ( pdflatex , xelatex , lualatex ) o alguno de estos paquetes: pdfroff , wkhtml2pdf , prince , weasyprint.

El comando es bastante sencillo, si queremos producir el fichero con LaTeX (pdflatex):

pandoc ejemplo.md -o ejemplo.pdf

Y si queremos utilizar un motor alternativo (wkhtml2pdf en este ejemplo):

pandoc --pdf-engine=wkhtml2pdf ejemplo.md -o ejemplo.pdf

Para más información, siempre es recomendable acudir a la guía de usuario. Y si no os sentís muy cómodos con la línea de comandos, hay una demo del conversor en versión web aquí.

¡A darle caña al markdown!