11

我搜索了高低,试图找出如何批处理pandoc

如何将包含 html 文件的文件夹和嵌套文件夹转换为 markdown?

我正在使用 os x 10.6.8

4

3 回答 3

23

您可以使用以下命令对目录树中的文件应用任何命令find

find . -name \*.md -type f -exec pandoc -o {}.txt {} \;

pandoc在所有带有后缀的文件上运行.md,创建带有.md.txt后缀的文件。(如果你想得到一个.txt没有 的后缀.md,或者用 subshel​​l 调用做丑陋的事情,你将需要一个包装脚本。) {}-exec到终止的任何单词\;都将被文件名替换。

于 2012-04-25T20:52:13.283 回答
2

我制作了一个无法递归工作的 bash 脚本,也许您可​​以根据自己的需要对其进行调整:

#!/bin/bash    
newFileSuffix=md # we will make all files into .md

for file in $(ls ~/Sites/filesToMd );
do
  filename=${file%.html} # remove suffix
  newname=$filename.$newFileSuffix # make the new filename
#  echo "$newname" # uncomment this line to test for your directory, before you break things
   pandoc ~/Sites/filesToMd/$file -o $newname # perform pandoc operation on the file,
                                                     # --output to newname


done
# pandoc Catharsis.html -o test
于 2013-12-09T01:29:47.840 回答
-1

这建立在geekosaur 的答案之上,以避免.old.new扩展并.new改为使用。请注意,它以静默方式运行,不显示任何进度。

find -type f -name '*.docx' -exec bash -c 'pandoc -f docx -t gfm "$1" -o "${1%.docx}".md' - '{}' \;

转换后,当您准备删除原始格式时:

find -type f -name '*.docx' -delete
于 2020-11-29T05:23:01.570 回答