#解压缩 #命令行工具 #格式 #目录 #压缩 #错误信息 #实用工具

应用 ouch

一个易于压缩和解压缩文件和目录的命令行实用工具

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压缩

Download history 147/week @ 2024-04-21 102/week @ 2024-04-28 84/week @ 2024-05-05 92/week @ 2024-05-12 78/week @ 2024-05-19 69/week @ 2024-05-26 101/week @ 2024-06-02 72/week @ 2024-06-09 63/week @ 2024-06-16 78/week @ 2024-06-23 58/week @ 2024-06-30 106/week @ 2024-07-07 66/week @ 2024-07-14 81/week @ 2024-07-21 147/week @ 2024-07-28 88/week @ 2024-08-04

389 每月下载量

MIT 许可证

135KB
2.5K SLoC

Crates.io link License

Ouch!

ouch 代表 明显的统一压缩助手.

它是一个用于压缩和解压缩各种格式的 CLI 工具。

功能

  1. 易于使用。
  2. 快速。
  3. 优秀的错误信息反馈。
  4. 无需运行时依赖(适用于 Linux x86_64)。
  5. 无障碍模式(更多)。
  6. Shell 完整性和手册页面。

用法

Ouch 有三个主要的子命令

  • ouch decompress(别名为 d
  • ouch compress(别名为 c
  • ouch list(别名为 lls

要查看特定命令的帮助信息

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 别名也支持: tgztbztbz2tlz4txztlzmatsztzst

格式可以串联

  • .tar.gz
  • .tar.gz.xz.zst.gz.lz4.sz

如果文件名没有扩展名,Ouch将尝试通过文件签名推断格式,并请求用户确认。

安装

Packaging status

在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