假设我的硬盘上有扩展名为.md
.
我想将所有这些文件转换为.html
throughfind
和-exec
选项。
将 Markdown 文件转换为 html 的命令是
markdown readme.md > readme.html
Run Code Online (Sandbox Code Playgroud)
我正在尝试使用类似的东西:
find / -name "*.md" -type f -exec markdown {} > {}.html \;
Run Code Online (Sandbox Code Playgroud)
当然,上面的方法是行不通的。那么,我如何只使用find
and 来做到这一点exec
?
rus*_*ush 19
您需要引用包含的构造,>
因为它是一个 shell 特殊字符,如下所示:
find / -name "*.md" -type f -exec sh -c 'markdown "$0" > "$0.html"' {} \;
Run Code Online (Sandbox Code Playgroud)
这也将重命名文件,因此您最终会得到foo.html
而不是foo.md.html
:
find / -name "*.md" -type f -exec sh -c 'markdown "${0}" > "${0%.md}.html"' {} \;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11760 次 |
最近记录: |