¿Cómo puedo convertir los documentos de Markdown a HTML en masa?


25

Estoy escribiendo algunos documentos en Markdown y creando un archivo separado para cada sección del documento. Me gustaría poder convertir todos los archivos a HTML de una vez, pero no puedo encontrar a nadie que haya probado lo mismo. Estoy en una Mac, así que creo que un simple script bash debería ser capaz de manejarlo, pero nunca he hecho nada en bash y no he tenido suerte. Parece que debería ser simple escribir algo para poder ejecutar:

markdown-batch ./*.markdown 

¿Alguna idea?

17

Ésta es la forma en que lo haría en Bash.

for i in ./*.markdown; do perl markdown.pl --html4tags $i > $i.html; done; 

Por supuesto, se necesita el Markdown script.

+7

Esta solución es buena, pero 'index.md' se convertirá en' index.md.html'. Si prefiere que se convierta en 'index.html', use esto:' for i in ./*.md; hacer perl Markdown.pl --html4tags $ i> output/$ {i%. *}. html; hecho; ' 13 abr. 122012-04-13 16:10:35


1

yo uso esto en un archivo .bat:

@echo off 
for %i in (*.txt) python markdown.py "%i" 
+6

Usted es fuera de tema: esta pregunta se etiqueta 'bash'. 16 nov. 132013-11-16 14:23:24


36

Use pandoc - es una herramienta de línea de comandos que le permite convertir de un formato a otro. Esta herramienta es compatible con Markdown a HTML y viceversa.

E.g. para generar HTML a partir de rebajas, ejecuta:

pandoc -f markdown index.md > index.html 
+3

+1 para pandoc ... ya que él lo está escribiendo en secciones, use pandoc para concatenar las secciones necesarias en un archivo html, si es necesario. 19 sep. 092009-09-19 00:31:05

  0

'for i in /some/directory/*.md; hacer pandoc -f markdown -t html -s "$ i"> "$ i" .html; hecho; 'Convertir todos los archivos dentro de una carpeta. 27 may. 172017-05-27 23:04:22


-1

// usando Bash en mac

for i in *.md; do asciidoc $i; done; 
  0

Esto no responde la pregunta: la pregunta se refiere a Markdown, no a AsciiDoc (aunque los dos son similares). Además, debe citar el '$ i'; de lo contrario, esto no funcionará para los archivos con caracteres especiales en el nombre. 28 feb. 172017-02-28 10:24:32