#转换 #批量 #文件 #cli-file #转换 #应用程序 #cli

bin+lib machin

Machin 是一个简化文件转换和批处理的命令行程序。它受到了 filter/map/reduce 的启发

9 个版本 (5 个破坏性更新)

0.6.0 2022年11月27日
0.5.3 2022年8月19日
0.4.1 2022年7月29日
0.3.0 2022年7月24日
0.1.0 2022年7月2日

#17 in #app

每月22次下载

自定义许可

210KB
1.5K SLoC

Machin

LICENSE Build Status Coverage Status Crates.io Version Minimum rustc version

简介

Machin 是一个简化文件转换和批处理的命令行程序。它受到了 filter/map/reduce 的启发

最新稳定版本

Packaging status

使用 crates.io 安装

cargo install machin

在您的系统上安装

克隆项目,然后使用

cargo install --path .

一些 machmap 示例

给出一个输入格式的支持转换列表

machmap -s svg

将 svg 文件转换为 png, jpg

ls *.svg | machmap -e png
ls *.svg | machmap -e jpg

将 webp 文件转换为 png, jpg

ls *.webp | machmap -e png
ls *.webp | machmap -e jpg

将 png 文件转换为 jpg, pdf

ls *.png | machmap -e jpg
ls *.png | machmap -e pdf

将 jpg 文件转换为 png, pdf

ls *.jpg | machmap -e png
ls *.jpg | machmap -e pdf

将 markdown 文件转换为 html

ls *.md | machmap -e html

将 json 文件转换为 yaml

ls *.json | machmap -e yaml

将 yaml 文件转换为 json

ls *.yaml | machmap -e json

一些 machconvert 示例

将 photo.jpg 的灰度、垂直翻转和最后 90 度旋转应用于 prefix_photo.jpg

顺序很重要

  1. 首先,颜色选项
  2. 翻转选项(垂直或水平)
  3. 旋转
ls *.png | machconvert -c grayscale -f vertical -r 90 -p prefix_
ls *.jpg | machconvert -c grayscale -f vertical -r 90 -p prefix_

一些 machreduce 示例

在同一文件上连接图像

ls *.png | machreduce -o result.png

使用图像创建 pdf

ls *.jpg | machreduce -o result.pdf

使用文件创建存档(zip)

ls *.png | machreduce -o archive.zip

使用多个 pdf 创建一个 pdf

ls *.pdf | machreduce -o merge.pdf

自动完成

在 zsh 中

在您的 ~/.zshrc 中添加此内容

fpath=("dir_of/_pouf" "${fpath[@]}")

之前

autoload -Uz compinit && compinit

开发

https://git.sr.ht/~julienxx/castor/tree/master/item/Makefile 启发而来的 Makefile

发布

make cargo-publish

依赖项

~32–44MB
~601K SLoC