fx
是一组子命令的入口点,可简化与 Fuchsia 开发相关的许多任务。
它包含大量子命令。运行 fx help
以查看所有可用子命令。
如果您使用 bash 或 zsh 作为 shell,请 source scripts/fx-env.sh
以获得一些自动补全功能。
另请参阅影响所有子命令的全局选项和标志。
fx 子命令
主要子命令
fx 工作流的子命令。
命令 | 类别 | 说明 |
---|---|---|
add-update-source | 软件交付 | 将代码库软件包服务器注册为设备的更新源 |
args | build | 手动修改当前 build 目录的 args.gn |
bazel | build | 为 Fuchsia 平台树运行实验性 Bazel build |
bazel-tool | build | 在 Fuchsia Bazel 工作区中运行 bazel-tool 脚本。 |
bootfs-size-report | 运行、检查和调试 | 根据 ZBI 生成未压缩大小报告 |
build | build | 运行 Ninja 以构建 Fuchsia |
build-metrics | 其他 | 管理 build 指标配置 |
build-profile | 其他 | 管理 build 配置文件 |
cipd | 源代码树 | 运行 cipd 命令行工具 |
clean | build | 清理当前的 Fuchsia build 工件 |
clean-build | build | 清理 build 目录,然后执行完整构建 |
cleandead | build | 删除 build 输出目录中过时的生成文件。 |
cleandead-build | build | 删除过时生成的文件,然后执行完整构建。 |
cmc | build | 组件清单编译器 |
cp | 设备管理 | 将文件复制到/从目标设备 |
create-pb-zip | 其他 | 根据 product_bundles.json 文件创建适合刷写的 pb.zip。 |
create | 源代码树 | 为新项目搭建框架 |
doc-checker | 代码提交和审核 | 使用各种检查来检查 Markdown 文档。 |
exec | 其他 | 读取当前 build 配置,然后执行 |
fargo | build | Fargo 是 Cargo 的 Fuchsia 专用封装容器原型 |
fetch-build-artifacts | build | TODO(https://fxbug.dev/42139110):正在建设中。 |
flash | 设备管理 | 刷写已连接的设备,并可选地对其进行铺路 |
flash-remote | 其他 | 远程构建、提取 Fuchsia 映像并将其刷写到设备上,请参阅 https://fuchsia.dev/fuchsia-src/development/sdk/ffx/flash-a-device |
format-code | 源代码树 | 对修改后的文件运行源代码格式化程序 |
gen | build | 对 Fuchsia build 目录运行 gn gen 。 |
get-build-artifacts | 内部 API | 已弃用!已重命名为 list-build-artifacts |
get-build-dir | build | 打印当前的 Fuchsia build 目录 |
get-device | 设备发现 | 输出当前所选设备的名称 |
get-device-addr | 设备发现 | 输出当前所选设备的 Fuchsia 地址 |
get-flash-source | 内部 API | 构建并返回所需的一组 build 工件的列表 |
get-src-dir | build | 输出 Fuchsia 源代码目录(检出根目录,也称为“//”) |
get-workspace-dir | build | 输出 Bazel 工作区目录 |
gn | build | 用于为 Ninja 生成 build 文件的元构建系统 |
go | build | 管理 Go 源代码 |
helpdoc | 文档 | 为 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 | 构建并返回所需的一组 build 工件的列表 |
list-devices | 设备发现 | 列出附近的所有设备(不包括 zedboot 上的设备) |
list-products | build | 列出可构建的产品 |
list-usb-disks | 其他 | 列出已连接的 USB 磁盘 |
local-publish-platform | 其他 | 将平台工件发布到本地 CIPD 实例。 |
日志 | 运行、检查和调试 | 显示目标设备的日志。 |
mdlint | 代码提交和审核 | Markdown lint 工具 |
merge-package-config | 其他 | |
metrics | 其他 | 在 FX 工具中管理指标收集 |
mkzedboot | 软件交付 | 制作 zedboot USB 密钥 |
mkzedboot-remote | 软件交付 | 制作 zedboot USB 密钥 |
multi | 其他 | 跨多个 build 目录运行 fx 命令。 |
netaddr | 设备发现 | 获取正在运行的 Fuchsia 系统的地址 |
netboot | 软件交付 | 运行 bootserver 以进行网络启动 |
netboot-remote | 其他 | 远程构建、提取和网络启动 |
netls | 设备发现 | 列出本地网络上正在运行的 Fuchsia 系统 |
ninja | build | 直接运行构建系统。请勿用于常规工作流。 |
ninjatrace2json | build | 在 chrome://tracing 中收集 Ninja 轨迹信息以进行分析 |
node-names | 设备管理 | 查找同一节点的其他名称 |
ota | 软件交付 | 在已连接的设备上执行系统 OTA |
pave | 软件交付 | 运行引导服务器以进行铺路 |
pave-remote | 其他 | 远程构建、提取和铺路 |
pave-zedboot | 软件交付 | 运行 bootserver 以铺平 zedboot |
pave-zedboot-remote | 其他 | 远程构建、提取和铺设 zedboot |
qemu | 运行、检查和调试 | 使用 FVM 磁盘在 QEMU 中启动 Fuchsia |
rbe | build | 检查远程 build 配置 |
reboot | 设备管理 | 重启目标 Fuchsia 系统 |
repro | build | 在本地复制基础架构 build 和测试的结果 |
rfc | 源代码树 | 为新的 RFC 创建框架 |
run-host-tests | 测试 | 已废弃!在主机上构建和运行测试 |
run-in-build-dir | build | 在当前 build 目录的根目录中运行给定命令 |
run-netboot | 运行、检查和调试 | 通过网络启动 QEMU 中的 Fuchsia |
run-script | 其他 | 运行自定义命令组合,能够利用 fx -i (迭代模式) |
scp | 设备管理 | 使用 build ssh 配置调用 scp |
sdk-deps | 其他 | 列出目标的依赖项,以及依赖项是否在 SDK 中 |
自行构建 | build | 构建最少的主机依赖项以运行 fx 主要工作流 |
自测 | 测试 | 运行 fx 和子命令的测试 |
serial | 设备管理 | 连接到串行控制台 |
serve | 软件交付 | 启动更新服务器并连接到正在运行的 Fuchsia 设备 |
serve-remote | 其他 | 从远程工作站提供服务 |
set | build | 设置 build 目录 |
set-build-dir | build | 设置其他 fx 命令使用的默认 build 目录 |
set-device | 设备发现 | 设置要与之交互的默认设备 |
setup-macos | 其他 | 在 macOS 应用防火墙中注册主机工具 |
setup-ufw | 其他 | 设置 Linux 防火墙规则以允许 Fuchsia 设备和模拟器流量。 |
sftp | 设备管理 | 使用 build ssh 配置调用 sftp |
shell | 设备管理 | 在目标设备中启动远程交互式 shell |
ssh | 设备管理 | 使用 Fuchsia 设备的 ssh 密钥和配置调用 ssh。 |
status | 其他 | 打印与开发者设置相关的信息 |
符号化 | 运行、检查和调试 | 已废弃,请使用“ffx debug symbolize” |
sync-to | 源代码树 | 将本地 Fuchsia 源代码树同步到给定状态 |
syslog | 运行、检查和调试 | 已弃用!fx 日志的已废弃别名 |
test | 测试 | 所有 Fuchsia 测试(主机、目标和端到端)的入口点 |
testgen | 测试 | 组件集成测试自动生成器 |
unset-device | 设备发现 | 取消设置要与之交互的默认设备 |
update | 软件交付 | 已弃用!fx ota 的已废弃别名 |
update-if-in-base | 软件交付 | 检查软件包是否在基础层中,并根据需要更新设备 |
use | build | 重复使用 fx set 设置的之前的 build 目录 |
vendor | 其他 | 将命令转发到 vendor/*/scripts/devshell |
wait | 设备管理 | 等待 shell 可用 |
Contrib 子命令
由具有其他级别支持或所有权的项目成员贡献的子命令。 contrib 目录中的 OWNERS 文件提供了指向支持每个脚本的成员的指针。
命令 | 类别 | 说明 |
---|---|---|
add-host-test | build | 向 args.gn 添加 GN 标签并进行重新生成 |
add-test | build | 向 args.gn 添加 GN 标签并进行重新生成 |
arm-esr | 其他 | 解码 ARM 异常综合征寄存器值 |
bazel2gn | 源代码树 | 针对同时在 gn 和 Bazel 中构建的目标同步 BUILD.gn 和 BUILD.bazel。 |
bindc | 运行、检查和调试 | 运行绑定程序编译器和调试程序 |
binutils | 运行、检查和调试 | 提供指向预构建 LLVM binutils 工具的快捷方式 |
bisect-rustc | 其他 | |
blobstats | 运行、检查和调试 | 计算 build 中的某些 blobfs 统计信息 |
bt-snoop-from-snapshot | 运行、检查和调试 | 将快照中的 Snoop 日志提取为 pcap 格式数据 |
build-main-pb | build | 构建当前的默认产品软件包 |
check-deps | build | 检查区域中的依赖关系图 |
check-goldens | 源代码树 | 检查 GN build 图中的所有金标准文件比较。 |
check-licenses | 文档 | 分析给定软件包或目录的许可状态 |
cl | 代码提交和审核 | 在新浏览器窗口中打开 gerrit 评价网址。 |
clang-tidy | 源代码树 | 对指定文件运行 clang-tidy |
clippy | 其他 | 在锁定的 fx 环境中运行 Rust 辅助脚本 |
clippy | 诊断 | |
compdb | build | 不推荐 |
core-tests | 测试 | 运行 Zircon core-tests |
覆盖率 | 测试 | 运行测试并导出覆盖率数据。 |
cpu-stats | 运行、检查和调试 | 根据快照生成 CPU 统计信息报告 |
dis | 诊断 | 转储构建中的二进制文件的反汇编内容。 |
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 开发板上。安装用户的 SSH 公钥 |
force-ota-from-devhost | 软件交付 | 从 devhost 强制执行无线下载系统更新(会重启!) |
fuzz | 运行、检查和调试 | 已废弃!在目标设备上运行模糊测试 |
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 | build | 打印当前主商品套装的标签 |
get-main-pb-path | build | 获取所提供产品 bundle 的输出路径 |
gnu | 运行、检查和调试 | 提供指向预构建 GNU 诊断工具的快捷方式 |
grep | 源代码树 | 在 Fuchsia 源代码中输出与给定模式匹配的行 |
init-partition-tables | 其他 | 运行 bootserver 以初始化分区表 |
iquery | 其他 | |
lint | 源代码树 | 对修改后的文件运行源代码 lint 工具 |
list-owners | 源代码树 | 查找与所提供路径对应的最近的 OWNERS 文件,或 |
list-packages | build | 列出构建的软件包。 |
ls-buildid | build | 在 build 目录、检出内容和云端存储空间中查找二进制文件 |
make-fuchsia-vol | 其他 | 构建 Fuchsia 永久性磁盘 |
mkinstaller | 软件交付 | 制作 Fuchsia 安装程序映像 |
mkinstaller-remote | 软件交付 | 从远程构建主机制作 Fuchsia 安装程序映像 |
move-docs | 文档 | 用于将文档从一个位置批量移至另一个位置的辅助工具 |
pending-commits | 源代码树 | 查看尚未发布到全球集成的提交 |
power-digest | 运行、检查和调试 | 汇总来自 Power Broker 的 Inspect 电源事件 |
power-viz | 运行、检查和调试 | 汇总来自电源代理的“检查电源”事件 |
pprof | 运行、检查和调试 | 用于授予对符号索引中本地文件的访问权限的 pprof 封装容器 |
publish | 软件交付 | 发布一组软件包 |
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 | 运行、检查和调试 | 在 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 | 测试 | 查找并运行受当前更改影响的测试。 |
snapshot | 运行、检查和调试 | 从关联的目标获取并解析快照。 |
嗅探 | 运行、检查和调试 | Fuchsia 数据包捕获和显示工具 |
sniff.py | 其他 | |
symbol-index | build | (已废弃)操控符号索引文件 |
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-rust-3p-outdated | 源代码树 | 使用 crates.io 中的最新版本更新外部 Rust 依赖项 |
update-rustc-third-party | 源代码树 | 更新了 rustc_library 和 rustc_binary third_party 依赖项 |
validate-sdk | build | 尝试基于核心 SDK 构建几个已知的基于 SDK 的 OOT 代码库 |
wipe-partition-tables | 其他 | 运行 bootserver 以擦除分区表 |
zbi_json_to_d3js.py | 其他 | |
zedmon | 其他 | 运行 zedmon 客户端 |
zxdb | 运行、检查和调试 | 已废弃,请使用“ffx debug connect” |