feat: 优化非 Docker 命令的易用性,修复带 digest 镜像无法按名称查找
- docker save/rmi:镜像名不再拼接 digest({{.Digest}} 对多数镜像输出
sha256:…,导致 alpine:3.20 被存成 alpine:3.20@sha256:… 而查不到),
digest 单独保存;同时修正自定义 --format 输出中 IMAGE ID 表头未被过滤
- diagnose:目标不存在时给出相似名称候选,无相似时列出当前存在的对象
- net.pids:无进程占用时向 stderr 提示且 stdout 保持为空,新增 --pid-file
- net.ports:默认输出跨平台一致的端口表格,--raw 保留原生命令输出
- disk.usage:路径可省略(默认当前目录),新增 --depth N 控制层级
This commit is contained in:
@@ -325,8 +325,9 @@ func Builtin() *Registry {
|
||||
Group: "disk",
|
||||
Summary: "列出目录下各直接子项的占用空间,按大小降序",
|
||||
Action: "等价于 du -x --max-depth=1 -h <路径> | sort -hr:统计每个直接子项(文件或目录递归)的占用," +
|
||||
"不跨越文件系统边界,末尾输出该路径的合计。路径必填,可作位置参数或用 --path 指定;" +
|
||||
"不跨越文件系统边界,末尾输出该路径的合计。路径可省略(默认当前目录),也可作位置参数或用 --path 指定;" +
|
||||
"由于 Windows 没有等价的 du/sort,这里使用 kopsc 内置实现以保证三平台输出一致",
|
||||
Usage: "[路径]",
|
||||
Variants: []Variant{
|
||||
{
|
||||
Match: Match{OS: "linux"},
|
||||
@@ -373,22 +374,24 @@ func Builtin() *Registry {
|
||||
{
|
||||
ID: "net.ports",
|
||||
Group: "net",
|
||||
Summary: "列出本机正在监听的 TCP/UDP 端口",
|
||||
Action: "以只读方式列出监听中的套接字及持有进程",
|
||||
Variants: []Variant{{
|
||||
Match: Match{OS: "linux"},
|
||||
Argv: []string{"ss", "-tulnp"},
|
||||
Note: "Linux 使用 iproute2 的 ss",
|
||||
},
|
||||
Summary: "列出本机正在监听的端口(表格)",
|
||||
Action: "只读:输出「端口 / 协议 / 地址 / PID / 进程」,按端口升序,三个平台格式一致;" +
|
||||
"--raw 保留平台原生命令(Linux ss -tulnp、macOS lsof、Windows netstat -ano)的原始输出",
|
||||
Variants: []Variant{
|
||||
{
|
||||
Match: Match{OS: "darwin"},
|
||||
Argv: []string{"lsof", "-iTCP", "-sTCP:LISTEN", "-nP"},
|
||||
Note: "macOS 使用 lsof",
|
||||
Match: Match{OS: "linux"},
|
||||
Builtin: "net.ports",
|
||||
Note: "Linux 内置实现(ss -tulnp 解析为表格)",
|
||||
},
|
||||
{
|
||||
Match: Match{OS: "windows"},
|
||||
Argv: []string{"netstat", "-ano"},
|
||||
Note: "Windows 使用 netstat",
|
||||
Match: Match{OS: "darwin"},
|
||||
Builtin: "net.ports",
|
||||
Note: "macOS 内置实现(lsof 解析为表格)",
|
||||
},
|
||||
{
|
||||
Match: Match{OS: "windows"},
|
||||
Builtin: "net.ports",
|
||||
Note: "Windows 内置实现(netstat -ano 解析为表格)",
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user