fx - Fuchsia 开发命令

fx 是一组子命令的入口点,可简化许多与 Fuchsia 开发相关的任务。

它包含大量子命令。运行 fx help 以查看所有可用的子命令。 如果您使用 bash 或 zsh 作为 shell,请获取 scripts/fx-env.sh
源代码 以进行一些自动补全

另请参阅会影响所有子命令的全局选项和标志

fx 子命令

主要子命令

属于 fx 工作流程的子命令。

命令 类别 说明
add-update-source 软件交付 将开发主机注册为目标的更新源
参数 build 手动修改当前 build 目录的 args.gn
bazel build 针对 Fuchsia 平台树运行实验性 Bazel build
bazel-tool build 在 Fuchsia Bazel 工作区中运行 bazel-tool 脚本。
bootfs-size-report 运行、检查和调试 根据 ZBI 生成未压缩的大小报告
build build 奔跑忍者,缔造紫红色
build-metrics 其他 管理构建指标配置
cipd 源代码树 运行 cipd 命令行工具
干净 build 清理当前的 Fuchsia 构建制品
clean-build build 清理 build 目录,然后执行完整构建
cleandead build 删除 build 输出目录中生成的过时文件。
cleandead-build build 删除过时的生成文件,然后执行完整构建。
cmc build 组件清单编译器
cp 设备管理 将文件复制到目标设备/从目标设备复制文件
create-pb-zip 其他 根据 product_bundles.json 文件创建适合刷写的 pb.zip。
创建 源代码树 创建 Scaffold 新项目
文档检查工具 代码提交和审核 通过各种检查来检查 Markdown 文档。
exec 其他 读取当前的构建配置,然后执行
法戈 build Fargo 是 Fuchsia 专用的原型封装容器
fetch-build-artifacts build TODO(https://fxbug.dev/42139110):正在构建中。
闪光灯 设备管理 刷写并(可选)为已连接的设备铺路
flash-remote 其他 远程构建、提取 Fuchsia 映像并将其刷写到设备上,请参阅 https://fuchsia.dev/fuchsia-src/development/sdk/ffx/flash-a-device
格式代码 源代码树 对修改的文件运行源格式化程序
世代 build 针对 Fuchsia build 目录运行 gn gen
get-build-artifacts 内部 API 已弃用!已重命名为“list-build-artifacts
get-build-dir build 输出当前的 fuchsia 构建目录
get-device 设备发现 输出当前选定的设备名称
get-device-addr 设备发现 输出当前所选设备的 Fuchsia 地址
get-flash-source 内部 API 构建并返回一组所需的构建工件的列表
get-src-dir build 输出 Fuchsia 源目录(检出根目录,也称为“//”)
get-workspace-dir build 输出 Bazel 工作区目录
gn build 元构建系统,可为 Ninja 生成构建文件
前往 build 管理 Go 源代码
帮助文档 文档 为 fx 子命令创建 Markdown 文档
host-tool 运行、检查和调试 运行由 build 生成的主机工具,
is-package-server-running 软件交付 检查软件包服务器是否正在运行
jiri 源代码树 用于多代码库开发的多用途工具。
JQ 其他 jq 是一个用于在命令行中处理 JSON 的实用程序。
jq5 build 将 jq 的功能扩展到 json5 对象。
klog 运行、检查和调试 监听内核日志
list-boards build 列出可用于建筑物的白板
list-build-artifacts 内部 API 构建并返回一组所需的构建工件的列表
list-devices 设备发现 列出附近的所有设备(不包括通过 zedboot 启动的设备)
list-products build 列出可用于构建的产品
list-usb-disks 其他 列出已挂接的 USB 磁盘
日志 运行、检查和调试 显示来自目标设备的日志。
mdlint 代码提交和审核 Markdown linter
merge-package-config 其他
metrics 其他 在 FX 工具中管理指标集合
mkzedboot 软件交付 创建一个 zedboot USB 密钥
mkzedboot-remote 软件交付 创建一个 zedboot USB 密钥
多件 其他 跨多个 build 目录运行 fx 命令。
netaddr 设备发现 获取正在运行的紫红色系统的地址
netboot 软件交付 针对 netbooting 运行 bootserver
netboot-remote 其他 远程构建、提取和 netboot
Netls 设备发现 列出本地网络上正在运行的紫红色系统
忍者 build 直接运行构建系统。不要用于常规工作流。
ninjatrace2json build 收集 Ninja 轨迹信息,以便在 chrome://tracing 中进行分析
节点名称 设备管理 查找同一节点的其他名称
ota 软件交付 在已连接的设备上执行系统 OTA
铺路 软件交付 运行 bootserver 进行铺路
铺路遥控器 其他 远程构建、提取和铺砌
pave-zedboot 软件交付 运行 bootserver 以铺路 zedboot
pave-zedboot-remote 其他 远程构建、提取和铺砌 zedboot
Qemu 运行、检查和调试 使用 FVM 磁盘在 qemu 中启动紫红色
重新启动 设备管理 重新启动目标紫红色系统
重现 build 在本地复制基础架构构建和测试的结果
rfc 源代码树 构建新的 RFC
run-host-tests 测试 已弃用!在主机上构建和运行测试
run-in-build-dir build 在当前构建目录的根目录下运行给定命令
run-netboot 运行、检查和调试 通过 netboot 在 Qemu 中启动 Fuchsia
运行脚本 其他 运行自定义的命令组合,以便能够利用 fx -i(迭代模式)
SCP 设备管理 使用构建 SSH 配置调用 SCP
sdk-deps 其他 列出目标的依赖项,以及依赖项是否在 SDK 中
自行构建 build 构建最小的主机依赖项以运行 fx 主工作流
自测 测试 对 fx 和子命令运行测试
serial 设备管理 连接到串行控制台
投放 软件交付 启动更新服务器并连接到正在运行的紫红色设备
serve-remote 其他 通过远程工作站提供服务
设置 build 设置 build 目录
set-build-dir build 设置其他 fx 命令使用的默认 build 目录
set-device 设备发现 设置要与之互动的默认设备
setup-macos 其他 在 MacOS 应用防火墙中注册主机工具
setup-ufw 其他 设置 Linux 防火墙规则以允许 Fuchsia 设备和模拟器流量。
sftp 设备管理 使用构建 SSH 配置调用 SFTP
shell 设备管理 在目标设备中启动远程交互式 shell
ssh 设备管理 使用 Fuchsia 设备的 SSH 密钥和配置调用 SSH。
状态 其他 输出有关开发者设置的信息
符号化 运行、检查和调试 已弃用,请使用“ffx 调试符号化”
同步到 源代码树 将本地 Fuchsia 源代码树同步到给定状态
syslog 运行、检查和调试 已弃用!已弃用的 fx 日志别名
test 测试 所有 Fuchsia 测试(主机、目标和端到端)的入口点
testgen 测试 组件集成测试自动生成器
取消设置设备 设备发现 取消设置默认设备以与之互动
更新 软件交付 已弃用!已弃用的 fx ota 别名
update-if-in-base 软件交付 检查软件包是否在基础中,并根据需要更新设备
使用 build 重复使用 fx set 设置的先前 build 目录
供应商 其他 将命令转发到 vendor/*/scripts/devshell
等待 设备管理 等待 shell 可用

Contrib 子命令

由拥有其他级别支持和/或所有权的项目成员贡献的子命令。 OWNERS 文件在 contrib 目录提供一个指向支持各脚本的成员的指针。

命令 类别 说明
add-test build 向 args.gn 和 regen 添加 GN 标签
arm-esr 其他 解码 ARM 异常情况寄存器值
bindc 运行、检查和调试 运行绑定程序编译器和调试程序
binutils 运行、检查和调试 提供预构建 LLVM binutils 工具的快捷方式
bisect-rustc 其他
blobstats 运行、检查和调试 计算构建过程中的一些 blobfs 统计信息
bt-snoop-from-snapshot 运行、检查和调试 从快照中提取信息收集日志(采用 pcap 格式的数据)
check-deps 属性 build 检查区域依赖关系图
check-goldens 源代码树 检查 GN build 图中的所有黄金文件比较。
检查许可 文档 分析指定软件包或目录的许可状态
cl 代码提交和审核 在新的浏览器窗口中打开 Gerrit 评价网址。
clang-tidy 源代码树 对指定的文件运行 clang-tidy
剪辑 其他 在锁定下的 fx 环境中运行 Rust 帮助程序脚本
剪辑 诊断
compdb build 不推荐
core-tests 测试 运行 Zircon 核心测试
覆盖率 测试 运行测试并导出覆盖率数据。
cpu-stats 运行、检查和调试 根据快照生成 CPU 统计信息报告
dis 诊断 从 build 转储二进制文件的反汇编。
exec-host-tests 测试
extract-pprof 运行、检查和调试 从 inspect.json 中提取 pprof 数据
extract-zbi 其他
fastboot 设备管理 通过 fastboot 协议直接与设备的引导加载程序交互
ffx 其他 执行 ffx - 未来 fx
Fibitlcat 运行、检查和调试 已弃用,请使用“ffx debug fidl”
Fibitldoc 文档 为 FIDL 生成文档
Filltags 其他 为 .fidl 文件生成代码
查找所有者 其他
force-ota-from-devhost 软件交付 从 devhost 强制进行无线下载系统更新(重新启动!)
模糊测试 运行、检查和调试 已弃用!在目标设备上运行模糊测试
gc 软件交付 目标上的垃圾回收软件包(重新启动!)
gce 其他 Google Compute Engine 命令
gdb 运行、检查和调试 运行 GDB(GNU DeBugger)。
gen-cargo 其他 在 fx 环境中运行 Rust 帮助程序脚本
gen-cargo 源代码树 生成指向 Rust Cargo.toml 输出文件的符号链接
gerrit-split-cl 代码提交和审核 将 CL 链提交给 Gerrit
gerrit-submit 代码提交和审核 将 CL 链提交给 Gerrit
gnu 运行、检查和调试 提供预构建 GNU 诊断工具的快捷方式
grep 源代码树 输出 Fuchsia 源中与指定模式匹配的行
init-Partition-tables 其他 运行 bootserver,以初始化分区表
iquery 其他
lint 源代码树 对已修改的文件运行源代码 linter
list-owners 源代码树 查找与提供的路径或
list-packages build 列出已构建哪些软件包。
ls-buildid build 在 build 目录、Checkout 和 Cloud Storage 中查找二进制文件
make-fuchsia-vol 其他 创建一个紫红色永久性磁盘
mkinstaller 软件交付 制作 Fuchsia 安装程序映像
mkinstaller-remote 软件交付 从远程构建主机创建 Fuchsia 安装程序映像
move-docs 文档 用于将文档从一个位置批量移动到另一个位置的辅助工具
pending-commits 源代码树 查看尚未发布到全局集成的提交内容
power-digest 运行、检查和调试 总结来自 Power Broker 的检查电源事件
power-viz 运行、检查和调试 总结来自 Power Broker 的检查电源事件
pprof 运行、检查和调试 提供对 sign-index 中本地文件的访问权限的 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 测试 运行 e2e 测试
run-in-build 运行、检查和调试 在 build 目录中运行命令
run-recovery 运行、检查和调试 在 qemu 中启动 Fuchsia System Recovery
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 代码格式
花瓣 源代码树 配置 Jiri 以管理特定花瓣
set-relay 其他 通过将单个字节写入 |tty| 来激活外部中继的状态。
setup-go 其他 为 Go 开发设置结账流程。
setup-usb-ethernet 其他 为 USB CDC 以太网设置 udev 规则
show-package 软件交付 列出软件包内容
设为静音 源代码树 使用允许或编译器建议的修复来将 Rust lint 静音
大小检查 其他 用于运行商品尺寸检查工具的便捷封装容器。
冒烟测试 其他 在 fx 环境中运行 Python 帮助程序脚本
冒烟测试 测试 查找并运行受当前更改影响的测试。
快照 运行、检查和调试 从已连接的目标获取并解析快照。
运行、检查和调试 Fuchsia 数据包捕获和显示工具
sniff.py 其他
symbol-index build (已弃用)操纵符号索引文件
sync-from-stem 源代码树 同步集成,并依赖于与 fuchsia.git 状态匹配的状态
system-status 设备管理 获取系统状态摘要
test-rustdoc 测试 运行“fx rustdoc”针对所有 Rust 目标
测试统计信息 测试 查询和计算测试统计数据。
test-stats.py 测试 查询和计算测试统计数据。
traceutil 运行、检查和调试 紫红色追踪实用程序
分类 运行、检查和调试 生成错误情况报告
unarchive-package 软件交付 以 FAR 格式取消归档 Fuchsia 软件包归档
update-3p-owners 源代码树 更新第三方依赖项的 OWNERS 文件
update-rust-3p-outdated 源代码树 使用来自 crates.io 的最新内容更新外部 Rust 依赖项
update-rustc-third-party 源代码树 更新 rustc_library 和 rustc_binary 第三方依赖项
validate-sdk build 尝试基于核心 SDK 构建几个基于 SDK 的已知 OOT 代码库
wipe-partition-tables 其他 运行 bootserver 以擦除分区表
zbi_json_to_d3js.py 其他
zedmon 其他 运行 zedmon 客户端
zxdb 运行、检查和调试 已弃用,请使用“ffx 调试连接”