#text-file #plain-text #text #gzip #xz #concatenate #zstd

bin+lib aki-xcat

合并纯文本、gzip、xz 和 zstd 文件

26 个版本

0.1.36 2024 年 6 月 19 日
0.1.35 2023 年 1 月 11 日
0.1.34 2022 年 6 月 18 日
0.1.30 2021 年 11 月 15 日
0.1.19 2021 年 3 月 22 日

#143文本处理

Download history 3/week @ 2024-06-11 130/week @ 2024-06-18 6/week @ 2024-06-25 194/week @ 2024-07-30

194 每月下载量
用于 aki-txpr-macro

MIT/Apache

34KB
508

aki-xcat

crate Docs Rust Version Apache2/MIT licensed Test ubu Test mac Test win

合并纯文本、gzip、xz 和 zstd 文件。

功能

  • 合并纯文本、gzip ... 等文件。
  • 输入文件自动解压缩。
  • 最低支持 rustc 1.60.0 (7737e0b5c 2022-04-04)

命令帮助

aki-xcat --help
Usage:
  aki-xcat [options] [<file>...]

this is like a cat, zcat, xzcat, zstdcat and lz4cat.
with no <file> or when <file> is -, read standard input.
automatic discovery file type: plain, gz, xz, zst and lz4.

Options:
  -n, --number          output line number for each lines
  -f, --file-name       output file name for each lines
      --path-name       output path name for each lines
  -p, --pipe-in <num>   read from pipe <num> [unimplemented]

  -H, --help        display this help and exit
  -V, --version     display version information and exit

Argument:
  <file>         utf-8 encoded text file. A compressed file of it by gzip, xz, zstd, lz4.

Examples:
  You can simple use. Just arrange the files.
    aki-xcat file1 file2.gz file3.xz file4.zst file5.lz4

快速安装

  1. 您可以将此安装到 cargo bin 路径
cargo install aki-xcat
  1. 您可以构建 Debian 软件包
cargo deb

并将 .deb 安装到您的本地 Debian 软件包仓库中。

示例

此示例中使用的输入文件如下所示

cat fixtures/plain.txt

结果输出

abcdefg
hijklmn
zcat fixtures/gztext.txt.gz

结果输出

ABCDEFG
HIJKLMN

示例 1:简单合并

合并纯文本文件和 gzip 文本文件。

aki-xcat fixtures/plain.txt fixtures/gztext.txt.gz

结果输出

abcdefg
hijklmn
ABCDEFG
HIJKLMN

示例 2:多种文件格式

合并纯文本文件、gzip 文本文件、xz 文本文件、zstd 文本文件和 lz4 文本文件。

aki-xcat fixtures/plain.txt fixtures/gztext.txt.gz fixtures/xztext.txt.xz  fixtures/zstext.txt.zst fixtures/lz4text.txt.lz4

示例 3:输出所有行号

合并纯文本文件和 gzip 文本文件。

aki-xcat -n fixtures/plain.txt fixtures/gztext.txt.gz

结果输出

     1  abcdefg
     2  hijklmn
     3  ABCDEFG
     4  HIJKLMN

示例 4:文件名和行号

合并纯文本文件和 gzip 文本文件。

aki-xcat -n -f fixtures/plain.txt fixtures/gztext.txt.gz

结果输出

"plain.txt"     1   abcdefg
"plain.txt"     2   hijklmn
"gztext.txt.gz"     1   ABCDEFG
"gztext.txt.gz"     2   HIJKLMN

示例 5:路径名和行号

合并纯文本文件和 gzip 文本文件。

aki-xcat -n --path-name fixtures/plain.txt fixtures/gztext.txt.gz

结果输出

"fixtures/plain.txt"     1  abcdefg
"fixtures/plain.txt"     2  hijklmn
"fixtures/gztext.txt.gz"     1  ABCDEFG
"fixtures/gztext.txt.gz"     2  HIJKLMN

库示例

有关此库示例,请参阅 fn execute()

变更日志

此 crate 的变更日志在这里。

许可证

此项目受以下其中之一许可:

任选。

依赖项

~7.5MB
~141K SLoC