Fuchsia OS 命令行下类似猫的功能

cat-like functionality under Fuchsia OS command line

在第一个命令中,>ls 命令的输出转到 /data/result.txt。在第二个命令中,您看到文件的大小为 229.

$ ls > /data/result.txt
$ ls /data/result.txt
-      229 /data/result.txt

使用 Fuchsia OS 模拟器,目标系统上有许多程序。请参阅重新格式化的列表。 ls 给出目录列表。 hwhello_world_cpp 的修改版本。系统上的程序集,有没有可以用来显示/data/result.txt内容的程序?

$ ls /boot/bin                            -  1   286720 hid                      -  1    76176 ps
d  2        0 .                           -  1   201328 hw                       -  1   290832 ptysvc                                                                                                                             
-  1   221184 app                         -  1    53248 i2c                      -  1    70768 pwrbtn-monitor                                                                                                                             
-  1   314616 audio                       -  1   162024 i2cutil                  -  1   270272 run-vc                                                                                                                             
-  1   192024 backlight                   -  1   376848 ihda                     -  1  1142800 runtests                                                                                                                             
-  1    90128 biotime                     -  1  2871312 install-disk-image       -  1  3035736 rust_test_adapter                                                                                                                             
-  1     8280 blktest                     -  1  2035712 iochk                    -  1   320896 sdio                                                                                                                             
-  1  5353744 blobfs                      -  1  2012496 iotime                   -  1   212856 serial-test                                                                                                                                                     
-  1   331792 bootsvc                     -  1  1433896 isolated_devmgr          -  1   188840 sh                                                                                                                                                     
-  1    49984 clkctl                      -  1    16888 kcounter                 -  1    63800 signal                                                                                                                                                     
-  1    50208 clock                       -  1    63784 kill                     -  1     8264 spawn                                                                                                                                                     
-  1   892976 cmd                         -  1    65536 killall                  -  1   114192 spiutil                                                                                                                                                     
-  1  2681408 component_manager           -  1    45316 kilo                     -  1  2033040 storage-metrics                                                                                                                                                     
-  1   286736 console                     -  1    69632 kstats                   -  1   335912 svchost                                                                                                                                                                                     
-  1   880792 cpuctl                      -  1    53248 kstress                  -  1     8328 syscall-check                                                                                                                                                                                     
-  1    12624 crasher                     -  1    61456 ktrace                   -  1   278544 sysinfo                                                                                                                                                                                     
-  1   228240 dd                          -  1    16400 loadgen                  -  1  1315208 sysmem_connector                                                                                                                                                                                     
-  1   290832 ddk-schedule-work-perf      -  1  1220608 lsblk                    -  1     8280 tee-test                                                                                                                                                                                                                                  
-  1   274448 device-name-provider        -  1   842704 lsdev                    -  1    70368 thermal-cli                                                                                                                                                                                                                                  
-  1   217120 df                          -  1    55280 lspwr                    -  1    77824 threads                                                                                                                                                                                                                                  
-  1  2469904 disk-inspect                -  1    76512 lsusb                    -  1    73760 top                                                                                                                                                                                                                                  
-  1   880672 display-test                -  1   172400 lz4                      -  1    81920 trace-benchmark
-  1    63776 dlog                        -  1    82112 memgraph                 -  1    90112 trace-example
-  1  2908472 driver_host                 -  1  2494704 minfs                    -  1   131072 umount
-  1  4038384 driver_manager              -  1   565264 miscsvc                  -  1   842688 unbind
-  1   867040 driverctl                   -  1   132144 mkfs                     -  1   875448 usb-fwloader
-  1     8288 driverinfo                  -  1    21120 mkfs-msdosfs             -  1   258120 usbctl
-  1   131968 fsck                        -  1   135424 mount                    -  1  2581032 virtual-console
-  1    36864 fsck-msdosfs                -  1   126976 mutex_pi_exerciser       -  1    67928 vmaps
-  1   684048 fshost                      -  1   113432 nand-loader              -  1    72032 vmos
-  1  2052112 fvm-check                   -  1   909312 nand-util                -  1   917504 waitfor
-  1    98304 gpt                         -  1   210008 netsvc                   -  1     8264 watch
-  1    74016 handles                     -  1    16624 ping                     -  1    45568 xdc-test
-  1   149728 hello_world_rust

cat 程序由 //third_party/sbase:cat 目标提供。

bringup 产品创建了一个不包含此目标的最小图像(产品列表 here)。要在 bringup 产品中使用 cat

  • 选项 1:显式包含 //bundles:tools 目标,这取决于 cat 和其他一些基本工具。

     $ fx set bringup.x64 --with //bundles:tools
     $ fx build
     $ fx qemu
     $ cat -v
     usage: cat [-u] [file ...]
    
  • 选项 2:仅明确包含 cat

     $ fx set bringup.x64 --with //third_party/sbase:cat
     $ fx build
     $ fx qemu
     $ cat -v
     usage: cat [-u] [file ...]
    

对于 core 以上的其他产品,//bundles:tools 目标,因此 cat 默认包含在软件包范围内,如 [= 的声明中所示=20=] (link). Thus, it will be pulled on demand, as described here.