Add support for the littlefs file system in the fs shell. Update the sample to use the same partition configuration as the littlefs example for the SPI NOR test platform. Signed-off-by: Peter A. Bigot <pab@pabigot.com>
166 lines
2.6 KiB
ReStructuredText
166 lines
2.6 KiB
ReStructuredText
.. _shell-fs-sample:
|
|
|
|
File system shell example
|
|
#########################
|
|
|
|
Overview
|
|
********
|
|
|
|
This example provides shell access to a NFFS file system partition in flash.
|
|
|
|
Requirements
|
|
************
|
|
|
|
A board with NFFS file system support and UART console
|
|
|
|
Building
|
|
********
|
|
|
|
Native Posix
|
|
============
|
|
|
|
Before starting a build, make sure that the i386 pkconfig directory is in your
|
|
search path and that a 32-bit version of libfuse is installed. For more
|
|
background information on this requirement see :ref:`native_posix`.
|
|
|
|
.. code-block:: console
|
|
|
|
export PKG_CONFIG_PATH=/usr/lib/i386-linux-gnu/pkgconfig
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/subsys/shell/fs
|
|
:board: native_posix
|
|
:goals: build
|
|
:compact:
|
|
|
|
See :ref:`native_posix` on how to connect to the UART.
|
|
|
|
Reel Board
|
|
==========
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/subsys/shell/fs
|
|
:board: reel_board
|
|
:goals: build
|
|
:compact:
|
|
|
|
Particle Xenon
|
|
==============
|
|
|
|
This target is customized to support the same SPI NOR partition table as
|
|
the :ref:`littlefs-sample`.
|
|
|
|
.. zephyr-app-commands::
|
|
:zephyr-app: samples/subsys/shell/fs
|
|
:board: particle_xenon
|
|
:goals: build
|
|
:compact:
|
|
|
|
Running
|
|
*******
|
|
|
|
Once the board has booted, you will be presented with a shell prompt.
|
|
All file system related commands are available as sub-commands of fs.
|
|
|
|
Begin by mounting the NFSS file system.
|
|
|
|
.. code-block:: console
|
|
|
|
fs mount nffs /nffs
|
|
|
|
Files System Shell Commands
|
|
===========================
|
|
|
|
Mount
|
|
-----
|
|
|
|
Mount a file system partition to a given mount point
|
|
|
|
.. code-block:: console
|
|
|
|
fs mount (nffs|fat) <path>
|
|
|
|
Ls
|
|
--
|
|
|
|
List all files and directories in a given path
|
|
|
|
.. code-block:: console
|
|
|
|
fs ls [path]
|
|
|
|
Cd
|
|
--
|
|
|
|
Change current working directory to given path
|
|
|
|
.. code-block:: console
|
|
|
|
fs cd [path]
|
|
|
|
Pwd
|
|
---
|
|
|
|
List current working directory
|
|
|
|
.. code-block:: console
|
|
|
|
fs pwd
|
|
|
|
Write
|
|
-----
|
|
|
|
Write hexadecimal numbers to a given file.
|
|
Optionally a offset in the file can be given.
|
|
|
|
.. code-block:: console
|
|
|
|
fs write <path> [-o <offset>] <hex number> ...
|
|
|
|
Read
|
|
----
|
|
|
|
Read file and dump in hex and ASCII format
|
|
|
|
.. code-block:: console
|
|
|
|
fs read <path>
|
|
|
|
Trunc
|
|
-----
|
|
|
|
Truncate a given file
|
|
|
|
.. code-block:: console
|
|
|
|
fs trunc <path>
|
|
|
|
Mkdir
|
|
-----
|
|
|
|
Create a directory
|
|
|
|
.. code-block:: console
|
|
|
|
fs mkdir <path>
|
|
|
|
Rm
|
|
--
|
|
|
|
Remove a file or directory
|
|
|
|
.. code-block:: console
|
|
|
|
fs rm <path>
|
|
|
|
Flash Host Access
|
|
=================
|
|
|
|
For the Native POSIX board the flash partitions can be accessed from the host
|
|
Linux system.
|
|
|
|
By default the flash partitions are accessible through the directory *flash*
|
|
relative to the directory where the build is started.
|
|
|
|
|