跳到正文
本頁目錄

lip list

列出已安裝的套件。

概要

text
lip list [--json] [-h | --help]

說明

lip list 讀取工作區的狀態檔,把已安裝的套件以 <identity>@<version> 的形式分兩組輸出:

  1. 顯式安裝的套件:你要求安裝的套件,包括遊戲和載入器;
  2. 相依套件:因為其他套件需要而安裝的套件。

顯式安裝的套件排在前面。每組之內按安裝順序排列:一個套件排在它所相依的套件之後。

套件的身份是它的套件 ID;變體不是預設變體時,後面再加上 #<variant>,例如 github.com/LiteLDev/LegacyScriptEngine#lua。lip uninstall 接受的就是它。

lip list 不做任何變更,也不取得任何鎖,所以其他命令或伺服器執行時也能使用。沒有狀態檔的工作區,兩組都是空的。lip v0.x 的工作區沒有狀態檔而有 tooth_lock.json,此時會根據該檔案列出,並且不改動它。

選項

選項說明
--json以 JSON 輸出結果。
-h、--help輸出幫助並結束。

輸出

結果寫到標準輸出。不帶 --json 時是兩棵給人看的樹:

text
User-Requested
├── github.com/LiteLDev/bds@1.21.0
├── github.com/LiteLDev/LeviLamina@1.0.0
└── github.com/LiteLDev/LegacyScriptEngine#lua@0.9.0
Dependencies
└── github.com/LiteLDev/LegacyRemoteCall@0.9.0

空的組顯示 None。這種排版可能會變化;在指令碼中請用 --json。

帶 --json 時,結果是一個恰好包含下列成員的 JSON 物件:

json
{
  "ExplicitInstalled": [
    "github.com/LiteLDev/bds@1.21.0",
    "github.com/LiteLDev/LeviLamina@1.0.0",
    "github.com/LiteLDev/LegacyScriptEngine#lua@0.9.0"
  ],
  "ImplicitInstalled": [
    "github.com/LiteLDev/LegacyRemoteCall@0.9.0"
  ]
}
成員值
ExplicitInstalled由字串 <identity>@<version> 組成的陣列:顯式安裝的套件。
ImplicitInstalled由字串 <identity>@<version> 組成的陣列:相依套件。

結束狀態

結束代碼含義
0清單已輸出。
非 0用法錯誤,或無法讀取狀態檔。

示例

列出套件:

shell
lip list

在指令碼中用 jq 取得顯式安裝的套件:

shell
lip list --json | jq -r '.ExplicitInstalled[]'

另請參閱