mdsh 项目使用教程
mdshMulti-lingual, Markdown-based Literate Programming… in run-anywhere bash项目地址:https://gitcode.com/gh_mirrors/md/mdsh
项目介绍
mdsh 是一个用于 Markdown 文件的 Bash 脚本编译器和解释器。它可以将 Markdown 文件中的代码块转换为可执行的 Bash 脚本,也可以生成无依赖的、可分发的 Bash 脚本。mdsh 主要针对 Shell 代码块进行处理,但也可以通过自定义函数来处理其他语言的代码块。
项目快速启动
安装 mdsh
你可以通过以下几种方式安装 mdsh:
-
使用 Rust 工具 cargo:
cargo install mdsh
-
如果你是 Nix 用户:
nix-env -f https://github.com/NixOS/nixpkgs/archive/master.tar.gz -iA mdsh
-
如果你是 Nix + flakes 用户:
nix profile install github:zimbatm/mdsh
使用 mdsh
假设你有一个名为 example.md
的 Markdown 文件,内容如下:
# Example Script
```shell
echo "Hello, World!"
你可以通过以下命令运行这个 Markdown 文件:
```bash
mdsh example.md
应用案例和最佳实践
案例一:生成静态网站
你可以使用 mdsh 来生成一个简单的静态网站生成器。例如,创建一个 build.md
文件:
# Build Script
```shell
mkdir -p public
cp -r assets public/
pandoc index.md -o public/index.html
然后运行:
```bash
mdsh build.md
案例二:自动化部署
你可以使用 mdsh 来编写自动化部署脚本。例如,创建一个 deploy.md
文件:
# Deploy Script
```shell
rsync -avz --delete public/ user@example.com:/var/www/example.com
然后运行:
```bash
mdsh deploy.md
典型生态项目
mdsh 可以与其他工具和项目结合使用,以增强其功能和灵活性。以下是一些典型的生态项目:
- Pandoc:用于将 Markdown 文件转换为其他格式,如 HTML、PDF 等。
- Nix:用于包管理和系统配置,可以与 mdsh 结合使用来管理依赖和环境。
- Pre-commit Hooks:可以将 mdsh 集成到 Git 的预提交钩子中,以确保代码质量。
通过这些生态项目的结合,mdsh 可以更好地满足复杂的工作流程和需求。
mdshMulti-lingual, Markdown-based Literate Programming… in run-anywhere bash项目地址:https://gitcode.com/gh_mirrors/md/mdsh