14 个版本
0.5.1 | 2023 年 12 月 5 日 |
---|---|
0.4.2 | 2023 年 8 月 15 日 |
0.4.1 | 2023 年 1 月 5 日 |
0.4.0 | 2022 年 11 月 23 日 |
0.1.4 | 2021 年 3 月 29 日 |
#29 在 压缩
389 每月下载量
135KB
2.5K SLoC
Ouch!
ouch
代表 明显的统一压缩助手.
它是一个用于压缩和解压缩各种格式的 CLI 工具。
功能
- 易于使用。
- 快速。
- 优秀的错误信息反馈。
- 无需运行时依赖(适用于 Linux x86_64)。
- 无障碍模式(更多)。
- Shell 完整性和手册页面。
用法
Ouch 有三个主要的子命令
ouch decompress
(别名为d
)ouch compress
(别名为c
)ouch list
(别名为l
或ls
)
要查看特定命令的帮助信息
ouch help <COMMAND>
ouch <COMMAND> --help # equivalent
解压缩
使用 decompress
子命令,ouch
会自动检测扩展名。
ouch decompress a.zip
# Decompress multiple files
ouch decompress a.zip b.tar.gz c.tar
可以使用 -d/--dir
标志将解压缩结果重定向到另一个目录。
# Decompress 'summer_vacation.zip' inside of new folder 'pictures'
ouch decompress summer_vacation.zip --dir pictures
压缩
将输入文件传递给 compress
子命令,在末尾添加 输出文件。
# Compress two files into `archive.zip`
ouch compress one.txt two.txt archive.zip
# Compress file.txt using .lz4 and .zst
ouch compress file.txt file.txt.lz4.zst
ouch
会检测 输出文件 的扩展名以确定要使用哪些格式。
列出
ouch list archive.zip
# Example with tree formatting
ouch list source-code.zip --tree
输出
└── src
├── archive
│ ├── mod.rs
│ ├── tar.rs
│ └── zip.rs
├── utils
│ ├── colors.rs
│ ├── formatting.rs
│ ├── mod.rs
│ └── fs.rs
├── commands
│ ├── list.rs
│ ├── compress.rs
│ ├── decompress.rs
│ └── mod.rs
├── accessible.rs
├── error.rs
├── cli.rs
└── main.rs
支持的格式
格式 | .tar |
.zip |
7z |
.gz |
.xz ,.lzma |
.bz ,.bz2 |
.lz4 |
.sz (Snappy) |
.zst |
.rar |
---|---|---|---|---|---|---|---|---|---|---|
支持 | ✓ | ✓¹ | ✓¹ | ✓² | ✓ | ✓ | ✓ | ✓² | ✓ | ✓³ |
✓: 支持压缩和解压缩。
✓¹: 由于压缩格式的限制,(解)压缩不能使用流式处理。
✓²: 支持,压缩并行运行。
✓³: 由于RAR的严格许可,只能支持解压缩和列出。
tar
别名也支持: tgz
,tbz
,tbz2
,tlz4
,txz
,tlzma
,tsz
,tzst
。
格式可以串联
.tar.gz
.tar.gz.xz.zst.gz.lz4.sz
如果文件名没有扩展名,Ouch
将尝试通过文件签名推断格式,并请求用户确认。
安装
在Arch Linux上
pacman -S ouch
通过Scoop在Windows上
scoop install ouch
从crates.io
cargo install ouch
下载最新发布包
检查发布页面。
从源代码编译
检查编译指南。
依赖关系
如果您使用下载脚本安装了ouch
,则不需要依赖项(静态MUSL二进制)。
否则,您需要在系统上安装以下库
这些在所有主流Linux发行版和macOS上都可以使用。
基准测试
基准测试结果可在此处找到。测量并比较了压缩和解压缩Rust源代码的性能与Hyperfine。所呈现的值是平均(墙时钟)经过时间。
注意:ouch
高度重视使用舒适性和良好的错误消息,但我们计划在未来进行一些优化。
使用的版本
贡献
ouch
是由志愿者工作制作的,非常欢迎贡献者!任何贡献都不小,所有贡献都受到重视。
- 打开问题。
- 为您的首选发行版或软件包管理器打包。
- 打开拉取请求。
- 与朋友分享!
依赖关系
~20–32MB
~454K SLoC