普贤教程 › 包参考
tar 包
tar 归档(uStar 格式,普通文件)
| 项 | 值 |
|---|---|
| 包名 | tar |
| 版本 | 0.2.0 |
| 可用版本 | 0.1.0 / 0.2.0 |
| 入口 | tar.px |
| 分类 | 数据格式与编解码 |
| 文件数 / 行数 | 1 / 218 |
安装与引入
bash
pxpkg init # 首次 pxpkg add tar@0.2.0 pxpkg install
px
import tar所属分类教程:数据格式与编解码
公开接口
| 函数 | 参数 |
|---|---|
tar_pack | files |
tar_unpack | buf |
其余 12 个 def(内部与辅助,可直接调用但不属稳定接口)
| 函数 | 参数 |
|---|---|
tar_octal | n, width |
tar_octal_parse | s |
tar_str_find | s, sub |
tar_zero_buf | n |
tar_cbyte | c |
tar_write_str | b, offset, s, width |
tar_write_octal | b, offset, n, width |
tar_checksum | h |
tar_header | name, size, typeflag |
tar_list_files | buf |
tar_has_file | buf, name |
tar_get_file_size | buf, name |
包内说明(源码头注释)
text
============================================================ 普贤生态库:registry/tar —— tar 归档(uStar 格式,普通文件) ------------------------------------------------------------ 纯函数库(无 IO、无状态),编译(px build)与解释(px run)双模式一致。 tar_pack(files) → Ok(bytes) # files = [{"name","data"}, ...] tar_unpack(buf) → Ok([{name, data}, ...]) | Err 说明: - uStar 格式:512 字节头部 × N + 数据(512 补齐)+ 512×2 零结束块 - 仅普通文件(typeflag='0');name 写入 UTF-8 字节(<100 字节) - mode=0644 / mtime=0;校验和(chksum)按规范计算并校验 - data 接受 str(UTF-8);unpack 返回 str ============================================================