我正在尝试使用本机脚本将(及以下)中的每个.markdown
文件转换为 html。但是,将 html 打印为粗壮,这意味着要转换为,我需要运行:。~/notes/
Markdown.pl --html4tags
Markdown.pl
test.markdown
test.html
Markdown.pl --html4tags test.markdown > test.html
我一直在弄清楚如何将管道合并到递归find -exec
或find ... | xargs
函数中。我想出的最好的是:
for i in `find ~/notes/ -type f -name "*.markdown"` ; do
Markdown.pl --html4tags $i > ${i}.html ;
done
它成功地将每个.markdown
文件转换为 html,但当然它看起来像test.markdown.html
而不是test.html
.
所以基本上,我需要做一些类似转换${i}.markdown
成的事情${i}.html
,但我不知道如何在函数中对其进行编码。谢谢你的帮助。
编辑:我想出了一种方法来修复上述脚本,使用basename
(我刚刚发现):
for i in `find ~/notes/ -type f -name "*.markdown"` ; do
Markdown.pl --html4tags $i > `basename $i .markdown`.html ;
done
这基本上将每个.markdown
文件转换为 html,同时还剥离.markdown
扩展名,然后添加.html
扩展名。
我很想知道是否有更好的方法来做到这一点,例如,使用find -exec
.