CLI 插件

⚡ 要求Lima >= 2.0

Lima 支持类似 gitkubectldocker 的插件式命令别名系统。当你运行一个不存在的 limactl 命令时,Lima 会自动在你的系统 PATH 中查找名为 limactl-<command> 的外部程序。

创建自定义别名

要创建自定义别名,请创建一个名为 limactl-<alias> 的可执行脚本并将其放置在你的 PATH 中的某个位置。

示例:为列出实例创建 ps 别名 {#example-creating-a-ps-alias-for-listing-instances}

  1. 创建一个名为 limactl-ps 的脚本:

    #!/bin/sh
    # 以紧凑格式显示实例
    limactl list --format table "$@"
    
  2. 使其可执行并放置在你的 PATH 中:

    chmod +x limactl-ps
    sudo mv limactl-ps /usr/local/bin/
    
  3. 现在你可以使用它:

    limactl ps                    # 以表格格式显示实例
    limactl ps --quiet            # 仅显示实例名称
    

示例:创建 sh 别名 {#example-creating-an-sh-alias}

#!/bin/sh
# limactl-sh - 连接到实例 shell
limactl shell "$@"

创建此别名后:

limactl sh default           # 等同于:limactl shell default
limactl sh myinstance bash   # 等同于:limactl shell myinstance bash

工作原理

  1. 当你运行 limactl <unknown-command> 时,Lima 首先尝试查找内置命令
  2. 如果找不到内置命令,Lima 会在你的 PATH 中搜索 limactl-<unknown-command>
  3. 如果找到,Lima 会执行外部程序并将所有剩余参数传递给它
  4. 如果找不到,Lima 会显示标准的"未知命令"错误

这个系统允许你:

  • 创建个人快捷方式和别名
  • 在不修改核心应用程序的情况下扩展 Lima 的功能
  • 通过分发脚本与团队共享自定义命令