fx
是一組子指令的進入點,可簡化許多與 Fuchsia 開發相關的工作。
其中包含大量子指令。執行 fx help
即可查看所有可用的子指令。
如果您使用 bash 或 zsh 做為殼層,請提供 scripts/fx-env.sh
來源,取得一些自動完成功能。
另請參閱會影響所有子指令的全域選項和旗標。
fx 子指令
主要子指令
屬於 fx 工作流程的子指令。
指令 | 類別 | 說明 |
---|---|---|
add-update-source | 軟體推送 | 將存放區套件伺服器註冊為裝置的更新來源 |
args | 版本 | 手動編輯目前建構目錄的 args.gn |
atomic-commit | 其他 | 建立一組變更,以原子方式提交。這會修改 |
bazel | 版本 | 為 Fuchsia 平台樹執行實驗性 Bazel 建構作業 |
bazel-tool | 版本 | 在 Fuchsia Bazel 工作區中執行 bazel-tool 指令碼。 |
bootfs-size-report | 執行、檢查及偵錯 | 從 ZBI 產生未壓縮大小報表 |
建構 | 版本 | 執行 Ninja 建構 Fuchsia |
build-metrics | 其他 | 管理建構指標設定 |
build-profile | 其他 | 管理建構設定檔設定 |
cipd | 來源樹狀結構 | 執行 cipd 指令列工具 |
清除 | 版本 | 清除目前的 Fuchsia 建構構件 |
clean-build | 版本 | 清除建構目錄,然後執行完整建構作業 |
cleandead | 版本 | 刪除建構輸出目錄中過時的產生檔案。 |
cleandead-build | 版本 | 刪除過時的產生檔案,然後執行完整建構作業。 |
cmc | 版本 | 元件資訊清單編譯器 |
cp | 裝置管理 | 將檔案複製到/複製目標裝置 |
create-pb-zip | 其他 | 根據 product_bundles.json 檔案建立適合刷機的 pb.zip。 |
建立 | 來源樹狀結構 | 架構新專案 |
doc-checker | 提交及審查程式碼 | 使用各種檢查方式查看 Markdown 文件。 |
exec | 其他 | 讀取目前的建構設定,然後執行 |
fargo | 版本 | Fargo 是 Cargo 的原型,專為 Fuchsia 打造 |
fetch-build-artifacts | 版本 | TODO(https://fxbug.dev/42139110):建構中。 |
flash | 裝置管理 | 刷新連結裝置 |
flash-remote | 其他 | 從遠端建構、擷取及刷新 Fuchsia 映像檔到裝置上,請參閱 https://fuchsia.dev/fuchsia-src/development/sdk/ffx/flash-a-device |
format-code | 來源樹狀結構 | 對修改過的檔案執行來源格式化工具 |
gen | 版本 | 對 Fuchsia 建構目錄執行 gn gen 。 |
get-build-artifacts | 內部 API | 已淘汰!已重新命名為「list-build-artifacts 」 |
get-build-dir | 版本 | 列印目前的紫紅色建構目錄 |
get-device | 探索裝置 | 列印目前所選裝置名稱 |
get-device-addr | 探索裝置 | 列印目前所選裝置的 Fuchsia 位址 |
get-flash-source | 內部 API | 建構並傳回所需的一組建構構件清單 |
get-src-dir | 版本 | 列印 Fuchsia 來源目錄 (結帳根目錄,又稱「//」) |
get-workspace-dir | 版本 | 列印 Bazel 工作區目錄 |
gn | 版本 | 產生 Ninja 建構檔案的中繼建構系統 |
go | 版本 | 管理 Go 原始碼 |
helpdoc | 說明文件 | 為 fx 子指令建立 Markdown 文件 |
host-tool | 執行、檢查及偵錯 | 執行建構作業產生的主機工具 |
is-套件-server-running | 軟體推送 | 檢查套件伺服器是否正在執行 |
jiri | 來源樹狀結構 | 多用途工具,適用於多存放區開發作業。 |
jq | 其他 | jq 是一種公用程式,可在指令列上操控 JSON。 |
jq5 | 版本 | 擴充 jq 的功能,適用於 json5 物件。 |
klog | 執行、檢查及偵錯 | 監聽核心記錄 |
list-boards | 版本 | 列出可用的建構主面板 |
list-build-artifacts | 內部 API | 建構並傳回所需的一組建構構件清單 |
list-devices | 探索裝置 | 列出所有鄰近裝置 (不包括 zedboot 上的裝置) |
list-products | 版本 | 列出可供建構的產品 |
list-usb-disks | 其他 | 列出已連接的 USB 磁碟 |
local-publish-platform | 其他 | 將平台構件發布至本機 CIPD 執行個體。 |
記錄 | 執行、檢查及偵錯 | 顯示目標裝置的記錄。 |
mdlint | 提交及審查程式碼 | Markdown linter |
merge-套件-config | 其他 | |
metrics | 其他 | 在 FX 工具中管理指標收集作業 |
mkzedboot | 軟體推送 | 製作 zedboot USB 金鑰 |
mkzedboot-remote | 軟體推送 | 製作 zedboot USB 金鑰 |
multi | 其他 | 在多個建構目錄中執行 fx 指令。 |
netaddr | 探索裝置 | 取得執行中 Fuchsia 系統的位址 |
netboot | 軟體推送 | 執行開機伺服器以進行網路開機 |
netboot-remote | 其他 | 遠端建構、擷取及網路啟動 |
netls | 探索裝置 | 列出區域網路中正在執行的 Fuchsia 系統 |
ninja | 版本 | 直接執行建構系統。請勿用於一般工作流程。 |
ninjatrace2json | 版本 | 在 chrome://tracing 中收集 Ninja 追蹤資訊以供分析 |
節點名稱 | 裝置管理 | 找出同一節點的其他名稱 |
ota | 軟體推送 | 在連結裝置上執行系統 OTA |
qemu | 執行、檢查及偵錯 | 使用 FVM 磁碟在 QEMU 中啟動 Fuchsia |
rbe | 版本 | 檢查遠端建構設定 |
重新啟動 | 裝置管理 | 重新啟動目標 Fuchsia 系統 |
repro | 版本 | 在本機複製基礎架構建構和測試的結果 |
rfc | 來源樹狀結構 | Scaffold new RFCs |
run-host-tests | 測試 | 已淘汰!在主機上建構及執行測試 |
run-in-build-dir | 版本 | 在目前建構目錄的根層級執行指定指令 |
run-netboot | 執行、檢查及偵錯 | 透過 Netboot 在 QEMU 中啟動 Fuchsia |
run-script | 其他 | 執行自訂指令組合,可善用 fx -i (疊代模式) |
scp | 裝置管理 | 使用建構的 SSH 設定叫用 scp |
sdk-deps | 其他 | 列出目標的依附元件,以及依附元件是否位於 SDK 中 |
自行建構 | 版本 | 建構執行 fx 主要工作流程所需的最低主機依附元件 |
自我測試 | 測試 | 執行 fx 和子指令的測試 |
serial | 裝置管理 | 連結至序列主控台 |
serve | 軟體推送 | 啟動更新伺服器,並附加至正在執行的 Fuchsia 裝置 |
serve-remote | 其他 | 從遠端工作站提供服務 |
設定 | 版本 | 設定建構目錄 |
set-build-dir | 版本 | 設定其他 fx 指令使用的預設建構目錄 |
set-device | 探索裝置 | 設定預設互動裝置 |
set-main-pb | 版本 | 在多產品環境中設定要建構的產品套裝組合 |
setup-macos | 其他 | 在 MacOS 應用程式防火牆中註冊主機工具 |
setup-ufw | 其他 | 設定 Linux 防火牆規則,允許 Fuchsia 裝置和模擬器流量。 |
sftp | 裝置管理 | 使用建構的 SSH 設定叫用 sftp |
shell | 裝置管理 | 在目標裝置中啟動遠端互動式殼層 |
ssh | 裝置管理 | 使用 Fuchsia 裝置的 SSH 金鑰和設定叫用 SSH。 |
狀態 | 其他 | 列印開發人員設定的相關資訊 |
sync-to | 來源樹狀結構 | 將本機 Fuchsia 來源樹狀結構同步至指定狀態 |
syslog | 執行、檢查及偵錯 | 已淘汰!fx log 的舊別名 |
測試 | 測試 | 所有 Fuchsia 測試 (主機、目標和端對端) 的進入點 |
testgen | 測試 | 元件整合測試自動產生器 |
unset-device | 探索裝置 | 取消設定預設互動裝置 |
更新 | 軟體推送 | 已淘汰!fx ota 的舊別名 |
update-if-in-base | 軟體推送 | 檢查套件是否位於基礎中,並視需要更新裝置 |
使用 | 版本 | 重複使用 fx set 設定的先前建構目錄 |
vendor | 其他 | 將指令轉送至 vendor/*/scripts/devshell |
wait | 裝置管理 | 等待殼層可用 |
Contrib 子指令
由專案成員貢獻的子指令,這些成員具有其他層級的支援、擁有權或兩者兼具。 contrib 目錄中的 OWNERS 檔案會提供指標,指向支援各個指令碼的成員。
指令 | 類別 | 說明 |
---|---|---|
add-host-test | 版本 | 在 args.gn 中新增 GN 標籤並重新產生 |
add-test | 版本 | 在 args.gn 中新增 GN 標籤並重新產生 |
arm-esr | 其他 | 解碼 ARM 例外狀況綜合症暫存器值 |
bazel2gn | 來源樹狀結構 | 針對同時在兩者中雙重建構的目標,同步處理 BUILD.gn 和 BUILD.bazel。 |
bindc | 執行、檢查及偵錯 | 執行繫結程式編譯器和偵錯工具 |
binutils | 執行、檢查及偵錯 | 提供預建 LLVM binutils 工具的捷徑 |
bisect-rustc | 其他 | |
blobstats | 執行、檢查及偵錯 | 從建構作業計算一些 blob 統計資料 |
bt-snoop-from-snapshot | 執行、檢查及偵錯 | 從快照擷取監聽記錄,做為 pcap 格式的資料 |
build-main-pb | 版本 | 建構目前的預設產品組合 |
check-deps | 版本 | 檢查區域中的依附元件圖表 |
check-goldens | 來源樹狀結構 | 檢查 GN 建構圖中的所有黃金檔案比較。 |
check-licenses | 說明文件 | 分析指定套件或目錄的授權狀態 |
cl | 提交及審查程式碼 | 列印 Gerrit 審查網址,並嘗試在使用者預設瀏覽器中開啟。 |
clang-tidy | 來源樹狀結構 | 對指定檔案執行 clang-tidy |
clippy | 其他 | 在鎖定狀態下的 fx 環境中執行 Rust 輔助指令碼 |
clippy | 診斷 | |
compdb | 版本 | 不再使用 |
core-tests | 測試 | 執行 Zircon 核心測試 |
涵蓋率 | 測試 | 執行測試並匯出涵蓋範圍資料。 |
cpu-stats | 執行、檢查及偵錯 | 從快照產生 CPU 統計資料報表 |
crosvm | 執行、檢查及偵錯 | 執行 crosvm |
dis | 診斷 | 傾印建構作業中二進位檔的反組譯。 |
dupefinder | 執行、檢查及偵錯 | 從堆積傾印中回報重複的配置。 |
exec-host-tests | 測試 | |
extract-pprof | 執行、檢查及偵錯 | 從 inspect.json 擷取 pprof 資料 |
extract-zbi | 其他 | |
fastboot | 裝置管理 | 透過 Fastboot 通訊協定直接與裝置的開機載入程式互動 |
ffx | 其他 | 執行 ffx - Fuchsia 裝置的開發人員工具。 |
fidlcat | 執行、檢查及偵錯 | 已淘汰,請改用「ffx debug fidl」 |
fidldoc | 說明文件 | 生成 FIDL 說明文件 |
fidltags | 其他 | 為 .fidl 檔案產生標記 |
find-owner | 其他 | |
flash-kola | 其他 | 將 Fuchsia 刷入系統啟動載入程式未修改的 Kola 板。 |
force-ota-from-devhost | 軟體推送 | 從開發主機強制執行無線系統更新 (會重新啟動!) |
fuzz | 執行、檢查及偵錯 | 已淘汰!在目標裝置上執行模糊測試 |
g-review | 提交及審查程式碼 | 對目前的提交內容執行 Gemini 審查 |
gc | 軟體推送 | 在目標上進行垃圾回收 (重新啟動!) |
gce | 其他 | Google Compute Engine 指令 |
gdb | 執行、檢查及偵錯 | 執行 GNU 偵錯工具 GDB。 |
gen-cargo | 其他 | 在 fx 環境中執行 Rust 輔助指令碼 |
gen-cargo | 來源樹狀結構 | 產生 Rust Cargo.toml 輸出檔案的符號連結 |
gerrit-split-cl | 提交及審查程式碼 | 將 CL 鏈提交至 Gerrit |
gerrit-submit | 提交及審查程式碼 | 將 CL 鏈提交至 Gerrit |
get-main-pb-path | 版本 | 取得所提供產品組合的輸出路徑 |
gnu | 執行、檢查及偵錯 | 提供預先建構的 GNU 診斷工具捷徑 |
grep | 來源樹狀結構 | 列印 Fuchsia 來源中符合指定模式的行 |
gum | 其他 | gum 是一種公用程式,可為指令碼新增互動功能 |
iquery | 其他 | |
lint | 來源樹狀結構 | 對修改過的檔案執行來源 Lint 檢查 |
list-owners | 來源樹狀結構 | 找出與所提供路徑對應的最近 OWNERS 檔案,或 |
list-packages | 版本 | 列出建構的套件。 |
ls-buildid | 版本 | 在建構目錄、簽出和雲端儲存空間中尋找二進位檔 |
make-fuchsia-vol | 其他 | 建構 Fuchsia 永久磁碟 |
mkinstaller | 軟體推送 | 製作 Fuchsia 安裝程式映像檔 |
mkinstaller-remote | 軟體推送 | 從遠端建構主機製作 Fuchsia 安裝程式映像檔 |
move-docs | 說明文件 | 可將大量文件從一個位置移至另一個位置的輔助工具 |
pending-commits | 來源樹狀結構 | 查看尚未發布至全球整合的提交內容 |
pprof | 執行、檢查及偵錯 | pprof 包裝函式,可存取符號索引中的本機檔案 |
發布 | 軟體推送 | 發布一組套件 |
qemu-cipd-ensure | 其他 | 產生 CIPD 檔案,下載目前的 QEMU 套件。 |
refresh-bazel-compdb | 其他 | |
refresh-bazel-compdb-bin.py | 其他 | |
remove-update-source | 軟體推送 | 取消將存放區套件伺服器註冊為裝置的更新來源 |
roll-compiler | 其他 | |
run-boot-test | 執行、檢查及偵錯 | 執行 ZBI 測試 |
run-boot-test.py | 其他 | |
run-e2e-tests | 測試 | 執行端對端測試 |
run-in-build | 執行、檢查及偵錯 | 在建構目錄中執行指令 |
run-recovery | 執行、檢查及偵錯 | 在 qemu 中啟動 Fuchsia 系統復原 |
run-zbi-test-remote | 執行、檢查及偵錯 | 遠端建構 ZBI 測試、擷取並執行 |
rust-3p-outdated | 其他 | 在鎖定狀態下的 fx 環境中執行 Rust 輔助指令碼 |
rust-3p-outdated | 診斷 | |
rustdoc | 其他 | 在 fx 環境中執行 Rust 輔助指令碼 |
rustdoc-link | 其他 | 在 fx 環境中執行 Rust 輔助指令碼 |
rustdoc-link | 說明文件 | Rust 程式碼的生成說明文件連結。取代 fx rustdoc |
rustdoc | 說明文件 | 為 Rust 程式碼生成說明文件 |
rustfmt | 其他 | 在 fx 環境中執行 Rust 輔助指令碼 |
rustfmt | 來源樹狀結構 | 設定 Rust 程式碼格式 |
set-petal | 來源樹狀結構 | 設定 jiri 來管理特定花瓣 |
set-relay | 其他 | 將單一位元組寫入 |tty|,啟動外部繼電器的狀態。 |
setup-go | 其他 | 設定 Go 開發的結帳程序。 |
setup-usb-ethernet | 其他 | 設定 USB CDC 乙太網路的 udev 規則 |
show-package | 軟體推送 | 列出套件內容 |
shush | 來源樹狀結構 | 使用允許或編譯器建議的修正方式,讓 Rust Lint 保持靜默 |
size-check | 其他 | 方便執行產品尺寸檢查工具的包裝函式。 |
smoke-test | 其他 | 在 fx 環境中執行 Python 輔助指令碼 |
smoke-test | 測試 | 找出並執行受目前變更影響的測試。 |
快照 | 執行、檢查及偵錯 | 從已連結的目標取得並剖析快照。 |
sniff | 執行、檢查及偵錯 | Fuchsia 封包擷取和顯示工具 |
sniff.py | 其他 | |
sync-from-stem | 來源樹狀結構 | 將整合和依附元件同步至與 fuchsia.git 狀態相符的狀態 |
system-status | 裝置管理 | 取得系統狀態摘要 |
test-rustdoc | 測試 | 在所有 Rust 目標上執行「fx rustdoc」 |
test-stats | 測試 | 查詢及計算測試統計資料。 |
test-stats.py | 測試 | 查詢及計算測試統計資料。 |
分流 | 執行、檢查及偵錯 | 使用 Google 專屬規則生成錯誤狀況報告。 |
unarchive-package | 軟體推送 | 以 FAR 格式取消封存 Fuchsia 套件封存檔 |
update-3p-owners | 來源樹狀結構 | 更新 third_party 依附元件的 OWNERS 檔案 |
update-bazel-vendor-dir | 版本 | 更新 Bazel 供應商目錄,納入所有必要的 Bazel 依附元件。 |
update-rust-3p-outdated | 來源樹狀結構 | 使用 crates.io 的最新版本更新外部 Rust 依附元件 |
update-rustc-third-party | 來源樹狀結構 | 更新 rustc_library 和 rustc_binary 第三方依附元件 |
zbi_json_to_d3js.py | 其他 | |
zedmon | 其他 | 執行 zedmon 用戶端 |
zxdb | 執行、檢查及偵錯 | 已淘汰,請改用「ffx debug connect」 |