[rtems commit] doc: Sort the shell file commands into alphabetical order.

Chris Johns chrisj at rtems.org
Tue Sep 16 05:11:06 UTC 2014


Module:    rtems
Branch:    master
Commit:    fc9f8f5085724622a189ba5d44ac116d7b27e27c
Changeset: http://git.rtems.org/rtems/commit/?id=fc9f8f5085724622a189ba5d44ac116d7b27e27c

Author:    Chris Johns <chrisj at rtems.org>
Date:      Mon Sep 15 10:14:01 2014 +1000

doc: Sort the shell file commands into alphabetical order.

---

 doc/shell/file.t | 2787 ++++++++++++++++++++++++++++--------------------------
 1 files changed, 1433 insertions(+), 1354 deletions(-)

diff --git a/doc/shell/file.t b/doc/shell/file.t
index 2db057d..bda3d3d 100644
--- a/doc/shell/file.t
+++ b/doc/shell/file.t
@@ -11,32 +11,33 @@ The RTEMS shell has the following file and directory commands:
 
 @itemize @bullet
 
- at item @code{umask} - Set file mode creation mask
+ at item @code{blksync} - sync the block driver
+ at item @code{cat} - display file contents
+ at item @code{cd} - alias for chdir
+ at item @code{chdir} - change the current directory
+ at item @code{chmod} - change permissions of a file
+ at item @code{chroot} - change the root directory
 @item @code{cp} - copy files
- at item @code{mv} - move files
- at item @code{pwd} - print work directory
+ at item @code{dd} - format disks
+ at item @code{debugrfs} - debug RFS file system
+ at item @code{df} - display file system disk space usage
+ at item @code{dir} - alias for ls
+ at item @code{fdisk} - format disks
+ at item @code{hexdump} - format disks
+ at item @code{ln} - make links
 @item @code{ls} - list files in the directory
- at item @code{chdir} - change the current directory
+ at item @code{md5} - display file system disk space usage
 @item @code{mkdir} - create a directory
- at item @code{rmdir} - remove empty directories
- at item @code{ln} - make links
+ at item @code{mkdos} - DOSFS disk format
 @item @code{mknod} - make device special file
- at item @code{chroot} - change the root directory
- at item @code{chmod} - change permissions of a file
- at item @code{cat} - display file contents
- at item @code{msdosfmt} - format disk
- at item @code{rm} - remove files
+ at item @code{mkrfs} - format RFS file system
 @item @code{mount} - mount disk
+ at item @code{mv} - move files
+ at item @code{pwd} - print work directory
+ at item @code{rmdir} - remove empty directories
+ at item @code{rm} - remove files
+ at item @code{umask} - Set file mode creation mask
 @item @code{unmount} - unmount disk
- at item @code{blksync} - sync the block driver
- at item @code{dd} - format disks
- at item @code{hexdump} - format disks
- at item @code{fdisk} - format disks
- at item @code{dir} - alias for ls
- at item @code{mkrfs} - format RFS file system
- at item @code{cd} - alias for chdir
- at item @code{df} - display file system disk space usage
- at item @code{md5} - display file system disk space usage
 
 @end itemize
 
@@ -51,20 +52,19 @@ command as well as providing an example usage.
 @c
 @c
 @page
- at subsection umask - set file mode creation mask
+ at subsection blksync - sync the block driver
 
- at pgindex umask
+ at pgindex blksync
 
 @subheading SYNOPSYS:
 
 @example
-umask [new_umask]
+blksync driver
 @end example
 
 @subheading DESCRIPTION:
 
-This command sets the user file creation mask to @code{new_umask}.  The
-argument @code{new_umask} may be octal, hexadecimal, or decimal.
+This command XXX
 
 @subheading EXIT STATUS:
 
@@ -72,156 +72,68 @@ This command returns 0 on success and non-zero if an error is encountered.
 
 @subheading NOTES:
 
-This command does not currently support symbolic mode masks.
+NONE
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{umask}:
+The following is an example of how to use @code{blksync}:
 
 @example
-SHLL [/] $ umask
-022
-SHLL [/] $ umask 0666
-0666
-SHLL [/] $ umask
-0666
+EXAMPLE_TBD
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_UMASK
- at findex CONFIGURE_SHELL_COMMAND_UMASK
+ at findex CONFIGURE_SHELL_NO_COMMAND_BLKSYNC
+ at findex CONFIGURE_SHELL_COMMAND_BLKSYNC
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_UMASK} to have this
+ at code{CONFIGURE_SHELL_COMMAND_BLKSYNC} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_UMASK} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_BLKSYNC} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_umask
+ at findex rtems_shell_rtems_main_blksync
 
-The @code{umask} is implemented by a C language function
+The @code{blksync} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_umask(
+int rtems_shell_rtems_main_blksync(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{umask} has the
+The configuration structure for the @code{blksync} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_UMASK_Command;
+extern rtems_shell_cmd_t rtems_shell_BLKSYNC_Command;
 @end example
 
 @c
 @c
 @c
 @page
- at subsection cp - copy files
+ at subsection cat - display file contents
 
- at pgindex cp
+ at pgindex cat
 
 @subheading SYNOPSYS:
 
 @example
-cp [-R [-H | -L | -P]] [-f | -i] [-pv] src target
-cp [-R [-H | -L] ] [-f | -i] [-NpPv] source_file ... target_directory
+cat file1 [file2 .. fileN]
 @end example
 
 @subheading DESCRIPTION:
 
-In the first synopsis form, the cp utility copies the contents of the
-source_file to the target_file. In the second synopsis form, the contents of
-each named source_file is copied to the destination target_directory. The names
-of the files themselves are not changed. If cp detects an attempt to copy a
-file to itself, the copy will fail.
-
-The following options are available:
-
- at table @b
- at item -f
-For each existing destination pathname, attempt to overwrite it. If permissions
-do not allow copy to succeed, remove it and create a new file, without
-prompting for confirmation. (The -i option is ignored if the -f option is
-specified.)
-
- at item -H
-If the -R option is specified, symbolic links on the command line are followed.
-(Symbolic links encountered in the tree traversal are not followed.)
-
- at item -i
-Causes cp to write a prompt to the standard error output before copying a file
-that would overwrite an existing file. If the response from the standard input
-begins with the character 'y', the file copy is attempted.
-
- at item -L
-If the -R option is specified, all symbolic links are followed.
-
- at item -N
-When used with -p, do not copy file flags.
-
- at item -P
-No symbolic links are followed.
-
- at item -p
-Causes cp to preserve in the copy as many of the modification time, access
-time, file flags, file mode, user ID, and group ID as allowed by permissions.
-
-If the user ID and group ID cannot be preserved, no error message is displayed
-and the exit value is not altered.
-
-If the source file has its set user ID bit on and the user ID cannot be
-preserved, the set user ID bit is not preserved in the copy's permissions. If
-the source file has its set group ID bit on and the group ID cannot be
-preserved, the set group ID bit is not preserved in the copy's permissions. If
-the source file has both its set user ID and set group ID bits on, and either
-the user ID or group ID cannot be preserved, neither the set user ID or set
-group ID bits are preserved in the copy's permissions.
-
- at item -R
-If source_file designates a directory, cp copies the directory and the entire
-subtree connected at that point. This option also causes symbolic links to be
-copied, rather than indirected through, and for cp to create special files
-rather than copying them as normal files. Created directories have the same
-mode as the corresponding source directory, unmodified by the process's umask.
-
- at item -v
-Cause cp to be verbose, showing files as they are copied.
-
- at end table
-
-For each destination file that already exists, its contents are overwritten if
-permissions allow, but its mode, user ID, and group ID are unchanged.
-
-In the second synopsis form, target_directory must exist unless there is only
-one named source_file which is a directory and the -R flag is specified.
-
-If the destination file does not exist, the mode of the source file is used as
-modified by the file mode creation mask (umask, see csh(1)). If the source file
-has its set user ID bit on, that bit is removed unless both the source file and
-the destination file are owned by the same user. If the source file has its set
-group ID bit on, that bit is removed unless both the source file and the
-destination file are in the same group and the user is a member of that group.
-If both the set user ID and set group ID bits are set, all of the above
-conditions must be fulfilled or both bits are removed.
-
-Appropriate permissions are required for file creation or overwriting.
-
-Symbolic links are always followed unless the -R flag is set, in which case
-symbolic links are not followed, by default. The -H or -L flags (in conjunction
-with the -R flag), as well as the -P flag cause symbolic links to be followed
-as described above. The -H and -L options are ignored unless the -R option is
-specified. In addition, these options override eachsubhedading other and the
-command's actions are determined by the last one specified.
+This command displays the contents of the specified files.
 
 @subheading EXIT STATUS:
 
@@ -229,227 +141,73 @@ This command returns 0 on success and non-zero if an error is encountered.
 
 @subheading NOTES:
 
-NONE
+It is possible to read the input from a device file using @code{cat}.
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{cp} to
-copy a file to a new name in the current directory:
+The following is an example of how to use @code{cat}:
 
 @example
-SHLL [/] # cat joel
-cat: joel: No such file or directory
-SHLL [/] # cp etc/passwd joel
-SHLL [/] # cat joel
+SHLL [/] # cat /etc/passwd
 root:*:0:0:root::/:/bin/sh
 rtems:*:1:1:RTEMS Application::/:/bin/sh
 tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] # ls
-drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
-drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
--rw-r--r--   1   root   root         102 Jan 01 00:00 joel
-3 files 1710 bytes occupied
- at end example
-
-The following is an example of how to use @code{cp} to
-copy one or more files to a destination directory and
-use the same @code{basename} in the destination directory:
-
- at example
-SHLL [/] # mkdir tmp
-SHLL [/] # ls tmp
-0 files 0 bytes occupied
-SHLL [/] # cp /etc/passwd tmp
-SHLL [/] # ls /tmp
--rw-r--r--   1   root   root         102 Jan 01 00:01 passwd
-1 files 102 bytes occupied
-SHLL [/] # cp /etc/passwd /etc/group /tmp
-SHLL [/] # ls /tmp
--rw-r--r--   1   root   root         102 Jan 01 00:01 passwd
--rw-r--r--   1   root   root          42 Jan 01 00:01 group
-2 files 144 bytes occupied
-SHLL [/] #
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_CP
- at findex CONFIGURE_SHELL_COMMAND_CP
+ at findex CONFIGURE_SHELL_NO_COMMAND_CAT
+ at findex CONFIGURE_SHELL_COMMAND_CAT
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_CP} to have this
+ at code{CONFIGURE_SHELL_COMMAND_CAT} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CP} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_cp
-
-The @code{cp} command is implemented by a C language function which
-has the following prototype:
-
- at example
-int rtems_shell_rtems_main_cp(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{cp} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_CP_Command;
- at end example
-
- at subheading ORIGIN:
-
-The implementation and portions of the documentation for this
-command are from NetBSD 4.0.
-
- at c
- at c
- at c
- at page
- at subsection mv - move files
-
- at pgindex mv
-
- at subheading SYNOPSYS:
-
- at example
-mv [-fiv] source_file target_file
-mv [-fiv] source_file... target_file
- at end example
-
- at subheading DESCRIPTION:
-
-In its first form, the mv utility renames the file named by the source
-operand to the destination path named by the target operand.  This
-form is assumed when the last operand does not name an already
-existing directory.
-
-In its second form, mv moves each file named by a source operand to a
-destination file in the existing directory named by the directory
-operand.  The destination path for each operand is the pathname
-produced by the concatenation of the last operand, a slash, and the
-final pathname component of the named file.
-
-The following options are available:
-
- at table @b
- at item -f
-Do not prompt for confirmation before overwriting the destination
-path.
-
- at item -i
-Causes mv to write a prompt to standard error before moving a file
-that would overwrite an existing file.  If the response from the
-standard input begins with the character 'y', the move is attempted.
-
- at item -v
-Cause mv to be verbose, showing files as they are processed.
-
- at end table
-
-The last of any -f or -i options is the one which affects mv's
-behavior.
-
-It is an error for any of the source operands to specify a nonexistent
-file or directory.
-
-It is an error for the source operand to specify a directory if the
-target exists and is not a directory.
-
-If the destination path does not have a mode which permits writing, mv
-prompts the user for confirmation as specified for the -i option.
-
-Should the @b{rename} call fail because source and target are on
-different file systems, @code{mv} will remove the destination file,
-copy the source file to the destination, and then remove the source.
-The effect is roughly equivalent to:
-
- at example
-rm -f destination_path && \
-cp -PRp source_file destination_path && \
-rm -rf source_file
- at end example
-
- at subheading EXIT STATUS:
-
-The @code{mv} utility exits 0 on success, and >0 if an error occurs.
-
- at subheading NOTES:
-
-NONE
-
- at subheading EXAMPLES:
-
- at example
-SHLL [/] mv /dev/console /dev/con1
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_MV
- at findex CONFIGURE_SHELL_COMMAND_MV
-
-This command is included in the default shell command set.  When
-building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_MV} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MV} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_CAT} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_mv
+ at findex rtems_shell_rtems_main_cat
 
-The @code{mv} command is implemented by a C language function which
-has the following prototype:
+The @code{cat} is implemented by a C language function
+which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_mv(
+int rtems_shell_rtems_main_cat(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{mv} has the
+The configuration structure for the @code{cat} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_MV_Command;
+extern rtems_shell_cmd_t rtems_shell_CAT_Command;
 @end example
 
- at subheading ORIGIN:
-
-The implementation and portions of the documentation for this command
-are from NetBSD 4.0.
-
 @c
 @c
 @c
 @page
- at subsection pwd - print work directory
+ at subsection cd - alias for chdir
 
- at pgindex pwd
+ at pgindex cd
 
 @subheading SYNOPSYS:
 
 @example
-pwd
+cd directory
 @end example
 
 @subheading DESCRIPTION:
 
-This command prints the fully qualified filename of the current
-working directory.
+This command is an alias or alternate name for the @code{chdir}.
+See @ref{File and Directory Commands chdir - change the current directory, cd}
+for more information.
 
 @subheading EXIT STATUS:
 
@@ -461,134 +219,56 @@ NONE
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{pwd}:
+The following is an example of how to use @code{cd}:
 
 @example
+SHLL [/] $ cd etc
+SHLL [/etc] $ cd /
+SHLL [/] $ cd /etc
+SHLL [/etc] $ pwd
+/etc
+SHLL [/etc] $ cd /
+SHLL [/] $ pwd
+/
+SHLL [/] $ cd etc
+SHLL [/etc] $ cd ..
 SHLL [/] $ pwd
 /
-SHLL [/] $ cd dev
-SHLL [/dev] $ pwd
-/dev
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_PWD
- at findex CONFIGURE_SHELL_COMMAND_PWD
-
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_PWD} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_PWD} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_pwd
-
-The @code{pwd} is implemented by a C language function
-which has the following prototype:
-
- at example
-int rtems_shell_rtems_main_pwd(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{pwd} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_PWD_Command;
- at end example
-
- at c
- at c
- at c
- at page
- at subsection ls - list files in the directory
-
- at pgindex ls
-
- at subheading SYNOPSYS:
-
- at example
-ls [dir]
- at end example
-
- at subheading DESCRIPTION:
-
-This command displays the contents of the specified directory.  If
-no arguments are given, then it displays the contents of the current
-working directory.
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
- at subheading NOTES:
-
-This command currently does not display information on a set of
-files like the POSIX ls(1).  It only displays the contents of
-entire directories.
-
- at subheading EXAMPLES:
-
-The following is an example of how to use @code{ls}:
-
- at example
-SHLL [/] $ ls
-drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
-drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
-2 files 1608 bytes occupied
-SHLL [/] $ ls etc
--rw-r--r--   1   root   root         102 Jan 01 00:00 passwd
--rw-r--r--   1   root   root          42 Jan 01 00:00 group
--rw-r--r--   1   root   root          30 Jan 01 00:00 issue
--rw-r--r--   1   root   root          28 Jan 01 00:00 issue.net
-4 files 202 bytes occupied
-SHLL [/] $ ls dev etc
--rwxr-xr-x   1  rtems   root           0 Jan 01 00:00 console
--rwxr-xr-x   1   root   root           0 Jan 01 00:00 console_b
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_LS
- at findex CONFIGURE_SHELL_COMMAND_LS
+ at findex CONFIGURE_SHELL_NO_COMMAND_CD
+ at findex CONFIGURE_SHELL_COMMAND_CD
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_LS} to have this
+ at code{CONFIGURE_SHELL_COMMAND_CD} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_LS} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_CD} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_ls
+ at findex rtems_shell_rtems_main_cd
 
-The @code{ls} is implemented by a C language function
+The @code{cd} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_ls(
+int rtems_shell_rtems_main_cd(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{ls} has the
+The configuration structure for the @code{cd} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_LS_Command;
+extern rtems_shell_cmd_t rtems_shell_CD_Command;
 @end example
 
 @c
@@ -670,518 +350,6 @@ extern rtems_shell_cmd_t rtems_shell_CHDIR_Command;
 @c
 @c
 @page
- at subsection mkdir - create a directory
-
- at pgindex mkdir
-
- at subheading SYNOPSYS:
-
- at example
-mkdir  dir [dir1 .. dirN]
- at end example
-
- at subheading DESCRIPTION:
-
-This command creates the set of directories in the order they
-are specified on the command line.  If an error is encountered
-making one of the directories, the command will continue to
-attempt to create the remaining directories on the command line.
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
- at subheading NOTES:
-
-If this command is invoked with no arguments, nothing occurs.
-
-The user must have sufficient permissions to create the directory.
-For the @code{fileio} test provided with RTEMS, this means the user
-must login as @code{root} not @code{rtems}.
-
- at subheading EXAMPLES:
-
-The following is an example of how to use @code{mkdir}:
-
- at example
-SHLL [/] # ls
-drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
-drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
-2 files 1608 bytes occupied
-SHLL [/] # mkdir joel
-SHLL [/] # ls joel
-0 files 0 bytes occupied
-SHLL [/] # cp etc/passwd joel
-SHLL [/] # ls joel
--rw-r--r--   1   root   root         102 Jan 01 00:02 passwd
-1 files 102 bytes occupied
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_MKDIR
- at findex CONFIGURE_SHELL_COMMAND_MKDIR
-
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_MKDIR} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MKDIR} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_mkdir
-
-The @code{mkdir} is implemented by a C language function
-which has the following prototype:
-
- at example
-int rtems_shell_rtems_main_mkdir(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{mkdir} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_MKDIR_Command;
- at end example
-
- at c
- at c
- at c
- at page
- at subsection rmdir - remove empty directories
-
- at pgindex rmdir
-
- at subheading SYNOPSYS:
-
- at example
-rmdir  [dir1 .. dirN]
- at end example
-
- at subheading DESCRIPTION:
-
-This command removes the specified set of directories.  If no
-directories are provided on the command line, no actions are taken.
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
- at subheading NOTES:
-
-This command is a implemented using the @code{rmdir(2)} system
-call and all reasons that call may fail apply to this command.
-
- at subheading EXAMPLES:
-
-The following is an example of how to use @code{rmdir}:
-
- at example
-SHLL [/] # mkdir joeldir
-SHLL [/] # rmdir joeldir
-SHLL [/] # ls joeldir
-joeldir: No such file or directory.
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_RMDIR
- at findex CONFIGURE_SHELL_COMMAND_RMDIR
-
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_RMDIR} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_RMDIR} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_rmdir
-
-The @code{rmdir} is implemented by a C language function
-which has the following prototype:
-
- at example
-int rtems_shell_rtems_main_rmdir(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{rmdir} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_RMDIR_Command;
- at end example
-
- at c
- at c
- at c
- at page
- at subsection ln - make links
-
- at pgindex ln
-
- at subheading SYNOPSYS:
-
- at example
-ln [-fhinsv] source_file [target_file]
-ln [-fhinsv] source_file ... target_dir
- at end example
-
- at subheading DESCRIPTION:
-
-The ln utility creates a new directory entry (linked file) which has
-the same modes as the original file.  It is useful for maintaining
-multiple copies of a file in many places at once without using up
-storage for the ``copies''; instead, a link ``points'' to the original
-copy.  There are two types of links; hard links and symbolic links.
-How a link ``points'' to a file is one of the differences between a
-hard or symbolic link.
-
-The options are as follows:
- at table @b
- at item -f
-Unlink any already existing file, permitting the link to occur.
-
- at item -h
-If the target_file or target_dir is a symbolic link, do not follow it.
-This is most useful with the -f option, to replace a symlink which may
-point to a directory.
-
- at item -i
-Cause ln to write a prompt to standard error if the target file
-exists.  If the response from the standard input begins with the
-character `y' or `Y', then unlink the target file so that the link may
-occur.  Otherwise, do not attempt the link.  (The -i option overrides
-any previous -f options.)
-
- at item -n
-Same as -h, for compatibility with other ln implementations.
-
- at item -s
-Create a symbolic link.
-
- at item -v
-Cause ln to be verbose, showing files as they are processed.
- at end table
-
-By default ln makes hard links.  A hard link to a file is
-indistinguishable from the original directory entry; any changes to a
-file are effective independent of the name used to reference the file.
-Hard links may not normally refer to directories and may not span file
-systems.
-
-A symbolic link contains the name of the file to which it is linked.
-The referenced file is used when an @i{open} operation is performed on
-the link.  A @i{stat} on a symbolic link will return the linked-to
-file; an @i{lstat} must be done to obtain information about the link.
-The @i{readlink} call may be used to read the contents of a symbolic
-link.  Symbolic links may span file systems and may refer to
-directories.
-
-Given one or two arguments, ln creates a link to an existing file
-source_file.  If target_file is given, the link has that name;
-target_file may also be a directory in which to place the link;
-otherwise it is placed in the current directory.  If only the
-directory is specified, the link will be made to the last component of
-source_file.
-
-Given more than two arguments, ln makes links in target_dir to all the
-named source files.  The links made will have the same name as the
-files being linked to.
-
- at subheading EXIT STATUS:
-
-The @code{ln} utility exits 0 on success, and >0 if an error occurs.
-
- at subheading NOTES:
-
-NONE
-
- at subheading EXAMPLES:
-
- at example
-SHLL [/] ln -s /dev/console /dev/con1
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_LN
- at findex CONFIGURE_SHELL_COMMAND_LN
-
-This command is included in the default shell command set.  When
-building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_LN} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_LN} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_ln
-
-The @code{ln} command is implemented by a C language function which
-has the following prototype:
-
- at example
-int rtems_shell_rtems_main_ln(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{ln} has the following
-prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_LN_Command;
- at end example
-
- at subheading ORIGIN:
-
-The implementation and portions of the documentation for this command
-are from NetBSD 4.0.
-
- at c
- at c
- at c
- at page
- at subsection mknod - make device special file
-
- at pgindex mknod
-
- at subheading SYNOPSYS:
-
- at example
-mknod [-rR] [-F fmt] [-g gid] [-m mode] [-u uid] name [c | b]
-      [driver | major] minor
-mknod [-rR] [-F fmt] [-g gid] [-m mode] [-u uid] name [c | b]
-      major unit subunit
-mknod [-rR] [-g gid] [-m mode] [-u uid] name [c | b] number
-mknod [-rR] [-g gid] [-m mode] [-u uid] name p
- at end example
-
- at subheading DESCRIPTION:
-
-The mknod command creates device special files, or fifos.  Normally
-the shell script /dev/MAKEDEV is used to create special files for
-commonly known devices; it executes mknod with the appropriate
-arguments and can make all the files required for the device.
-
-To make nodes manually, the arguments are:
-
- at table @b
- at item -r
-Replace an existing file if its type is incorrect.
-
- at item -R
-Replace an existing file if its type is incorrect.  Correct the
-mode, user and group.
-
- at item -g gid
-Specify the group for the device node.  The gid operand may be a
-numeric group ID or a group name.  If a group name is also a numeric
-group ID, the operand is used as a group name.  Precede a numeric
-group ID with a # to stop it being treated as a name.
-
- at item -m mode
-Specify the mode for the device node.  The mode may be absolute or
-symbolic, see @i{chmod}.
-
- at item -u uid
-Specify the user for the device node.  The uid operand may be a
-numeric user ID or a user name.  If a user name is also a numeric user
-ID, the operand is used as a user name.  Precede a numeric user ID
-with a # to stop it being treated as a name.
-
- at item name
-Device name, for example ``tty'' for a termios serial device or ``hd''
-for a disk.
-
- at item  b | c | p
-Type of device.  If the device is a block type device such as a tape
-or disk drive which needs both cooked and raw special files, the type
-is b.  All other devices are character type devices, such as terminal
-and pseudo devices, and are type c.  Specifying p creates fifo files.
-
- at item driver | major
-The major device number is an integer number which tells the kernel
-which device driver entry point to use.  If the device driver is
-configured into the current kernel it may be specified by driver name
-or major number.
-
- at item minor
-The minor device number tells the kernel which one of several similar
-devices the node corresponds to; for example, it may be a specific
-serial port or pty.
-
- at item unit and subunit
-The unit and subunit numbers select a subset of a device; for example,
-the unit may specify a particular disk, and the subunit a partition on
-that disk.  (Currently this form of specification is only supported
-by the bsdos format, for compatibility with the BSD/OS mknod).
-
- at item number
-A single opaque device number.  Useful for netbooted computers which
-require device numbers packed in a format that isn't supported by
--F.
- at end table
-
- at subheading EXIT STATUS:
-
-The @code{mknod} utility exits 0 on success, and >0 if an error occurs.
-
- at subheading NOTES:
-
-NONE
-
- at subheading EXAMPLES:
-
- at example
-SHLL [/] mknod c 3 0 /dev/ttyS10
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_MKNOD
- at findex CONFIGURE_SHELL_COMMAND_MKNOD
-
-This command is included in the default shell command set.  When
-building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_MKNOD} to have this command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MKNOD} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_mknod
-
-The @code{mknod} command is implemented by a C language function which
-has the following prototype:
-
- at example
-int rtems_shell_rtems_main_mknod(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{mknod} has the following
-prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_MKNOD_Command;
- at end example
-
- at subheading ORIGIN:
-
-The implementation and portions of the documentation for this command
-are from NetBSD 4.0.
-
- at c
- at c
- at c
- at page
- at subsection chroot - change the root directory
-
- at pgindex chroot
-
- at subheading SYNOPSYS:
-
- at example
-chroot [dir]
- at end example
-
- at subheading DESCRIPTION:
-
-This command changes the root directory to @code{dir} for subsequent
-commands.
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
-The destination directory @code{dir} must exist.
-
- at subheading NOTES:
-
-NONE
-
- at subheading EXAMPLES:
-
-The following is an example of how to use @code{chroot}
-and the impact it has on the environment for subsequent
-command invocations:
-
- at example
-SHLL [/] $ cat passwd
-cat: passwd: No such file or directory
-SHLL [/] $ chroot etc
-SHLL [/] $ cat passwd
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] $ cat /etc/passwd
-cat: /etc/passwd: No such file or directory
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_CHROOT
- at findex CONFIGURE_SHELL_COMMAND_CHROOT
-
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_CHROOT} to have this
-command included. Additional to that you have to add one
-POSIX key value pair for each thread where you want to use
-the command.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CHROOT} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_chroot
-
-The @code{chroot} is implemented by a C language function
-which has the following prototype:
-
- at example
-int rtems_shell_rtems_main_chroot(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{chroot} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_CHROOT_Command;
- at end example
-
- at c
- at c
- at c
- at page
 @subsection chmod - change permissions of a file
 
 @pgindex chmod
@@ -1282,103 +450,26 @@ extern rtems_shell_cmd_t rtems_shell_CHMOD_Command;
 @c
 @c
 @page
- at subsection cat - display file contents
+ at subsection chroot - change the root directory
 
- at pgindex cat
+ at pgindex chroot
 
 @subheading SYNOPSYS:
 
 @example
-cat file1 [file2 .. fileN]
+chroot [dir]
 @end example
 
 @subheading DESCRIPTION:
 
-This command displays the contents of the specified files.
+This command changes the root directory to @code{dir} for subsequent
+commands.
 
 @subheading EXIT STATUS:
 
 This command returns 0 on success and non-zero if an error is encountered.
 
- at subheading NOTES:
-
-It is possible to read the input from a device file using @code{cat}.
-
- at subheading EXAMPLES:
-
-The following is an example of how to use @code{cat}:
-
- at example
-SHLL [/] # cat /etc/passwd
-root:*:0:0:root::/:/bin/sh
-rtems:*:1:1:RTEMS Application::/:/bin/sh
-tty:!:2:2:tty owner::/:/bin/false
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_CAT
- at findex CONFIGURE_SHELL_COMMAND_CAT
-
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_CAT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CAT} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_cat
-
-The @code{cat} is implemented by a C language function
-which has the following prototype:
-
- at example
-int rtems_shell_rtems_main_cat(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{cat} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_CAT_Command;
- at end example
-
- at c
- at c
- at c
- at page
- at subsection rm - remove files
-
- at pgindex rm
-
- at subheading SYNOPSYS:
-
- at example
-rm file1 [file2 ... fileN]
- at end example
-
- at subheading DESCRIPTION:
-
-This command deletes a name from the filesystem.  If the specified file name
-was the last link to a file and there are no @code{open} file descriptor
-references to that file, then it is deleted and the associated space in
-the file system is made available for subsequent use.
-
-If the filename specified was the last link to a file but there
-are open file descriptor references to it, then the file will
-remain in existence until the last file descriptor referencing
-it is closed.
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
+The destination directory @code{dir} must exist.
 
 @subheading NOTES:
 
@@ -1386,202 +477,159 @@ NONE
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{rm}:
+The following is an example of how to use @code{chroot}
+and the impact it has on the environment for subsequent
+command invocations:
 
 @example
-SHLL [/] # cp /etc/passwd tmpfile
-SHLL [/] # cat tmpfile
+SHLL [/] $ cat passwd
+cat: passwd: No such file or directory
+SHLL [/] $ chroot etc
+SHLL [/] $ cat passwd
 root:*:0:0:root::/:/bin/sh
 rtems:*:1:1:RTEMS Application::/:/bin/sh
 tty:!:2:2:tty owner::/:/bin/false
-SHLL [/] # rm tmpfile
-SHLL [/] # cat tmpfile
-cat: tmpfile: No such file or directory
+SHLL [/] $ cat /etc/passwd
+cat: /etc/passwd: No such file or directory
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_RM
- at findex CONFIGURE_SHELL_COMMAND_RM
+ at findex CONFIGURE_SHELL_NO_COMMAND_CHROOT
+ at findex CONFIGURE_SHELL_COMMAND_CHROOT
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_RM} to have this
-command included.
+ at code{CONFIGURE_SHELL_COMMAND_CHROOT} to have this
+command included. Additional to that you have to add one
+POSIX key value pair for each thread where you want to use
+the command.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_RM} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_CHROOT} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_rm
+ at findex rtems_shell_rtems_main_chroot
 
-The @code{rm} is implemented by a C language function
+The @code{chroot} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_rm(
+int rtems_shell_rtems_main_chroot(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{rm} has the
+The configuration structure for the @code{chroot} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_RM_Command;
+extern rtems_shell_cmd_t rtems_shell_CHROOT_Command;
 @end example
 
 @c
 @c
 @c
 @page
- at subsection mount - mount disk
+ at subsection cp - copy files
 
- at pgindex mount
+ at pgindex cp
 
 @subheading SYNOPSYS:
 
 @example
-mount [-t fstype] [-r] [-L] device path
+cp [-R [-H | -L | -P]] [-f | -i] [-pv] src target
+cp [-R [-H | -L] ] [-f | -i] [-NpPv] source_file ... target_directory
 @end example
 
 @subheading DESCRIPTION:
 
-The @code{mount} command will mount a block device to a mount point
-using the specified file system. The files systems are:
-
- at itemize @bullet
- at item msdos - MSDOS File System
- at item tftp  - TFTP Network File System
- at item ftp   - FTP Network File System
- at item nfs   - Network File System
- at item rfs   - RTEMS File System
- at end itemize
-
-When the file system type is 'msdos' or 'rfs' the driver is a "block
-device driver" node present in the file system. The driver is ignored
-with the 'tftp' and 'ftp' file systems. For the 'nfs' file system the
-driver is the 'host:/path' string that described NFS host and the
-exported file system path.
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
- at subheading NOTES:
-
-The mount point must exist.
-
-The services offered by each file-system vary. For example you cannot list the
-directory of a TFTP file-system as this server is not provided in the TFTP
-protocol. You need to check each file-system's documentation for the services
-provided.
-
- at subheading EXAMPLES:
-
-Mount the Flash Disk driver to the '/fd' mount point:
-
- at example
-SHLL [/] $ mount -t msdos /dev/flashdisk0 /fd
- at end example
-
-Mount the NFS file system exported path 'bar' by host 'foo':
-
- at example
-$ mount -t nfs foo:/bar /nfs
- at end example
-
-Mount the TFTP file system on '/tftp':
-
- at example
-$ mount -t tftp /tftp
- at end example
-
-To access the TFTP files on server '10.10.10.10':
-
- at example
-$ cat /tftp/10.10.10.10/test.txt
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_MOUNT
- at findex CONFIGURE_SHELL_COMMAND_MOUNT
+In the first synopsis form, the cp utility copies the contents of the
+source_file to the target_file. In the second synopsis form, the contents of
+each named source_file is copied to the destination target_directory. The names
+of the files themselves are not changed. If cp detects an attempt to copy a
+file to itself, the copy will fail.
 
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_MOUNT} to have this
-command included.
+The following options are available:
 
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MOUNT} when all
-shell commands have been configured.
+ at table @b
+ at item -f
+For each existing destination pathname, attempt to overwrite it. If permissions
+do not allow copy to succeed, remove it and create a new file, without
+prompting for confirmation. (The -i option is ignored if the -f option is
+specified.)
 
-The mount command includes references to file-system code. If you do not wish
-to include file-system that you do not use do not define the mount command
-support for that file-system. The file-system mount command defines are:
+ at item -H
+If the -R option is specified, symbolic links on the command line are followed.
+(Symbolic links encountered in the tree traversal are not followed.)
 
- at itemize @bullet
- at item msdos - CONFIGURE_SHELL_MOUNT_MSDOS
- at item tftp - CONFIGURE_SHELL_MOUNT_TFTP
- at item ftp - CONFIGURE_SHELL_MOUNT_FTP
- at item nfs - CONFIGURE_SHELL_MOUNT_NFS
- at item rfs - CONFIGURE_SHELL_MOUNT_RFS
- at end itemize
+ at item -i
+Causes cp to write a prompt to the standard error output before copying a file
+that would overwrite an existing file. If the response from the standard input
+begins with the character 'y', the file copy is attempted.
 
-An example configuration is:
+ at item -L
+If the -R option is specified, all symbolic links are followed.
 
- at example
-#define CONFIGURE_SHELL_MOUNT_MSDOS
-#ifdef RTEMS_NETWORKING
-  #define CONFIGURE_SHELL_MOUNT_TFTP
-  #define CONFIGURE_SHELL_MOUNT_FTP
-  #define CONFIGURE_SHELL_MOUNT_NFS
-  #define CONFIGURE_SHELL_MOUNT_RFS
-#endif
- at end example
+ at item -N
+When used with -p, do not copy file flags.
 
- at subheading PROGRAMMING INFORMATION:
+ at item -P
+No symbolic links are followed.
 
- at findex rtems_shell_rtems_main_mount
+ at item -p
+Causes cp to preserve in the copy as many of the modification time, access
+time, file flags, file mode, user ID, and group ID as allowed by permissions.
 
-The @code{mount} is implemented by a C language function
-which has the following prototype:
+If the user ID and group ID cannot be preserved, no error message is displayed
+and the exit value is not altered.
 
- at example
-int rtems_shell_rtems_main_mount(
-  int    argc,
-  char **argv
-);
- at end example
+If the source file has its set user ID bit on and the user ID cannot be
+preserved, the set user ID bit is not preserved in the copy's permissions. If
+the source file has its set group ID bit on and the group ID cannot be
+preserved, the set group ID bit is not preserved in the copy's permissions. If
+the source file has both its set user ID and set group ID bits on, and either
+the user ID or group ID cannot be preserved, neither the set user ID or set
+group ID bits are preserved in the copy's permissions.
 
-The configuration structure for the @code{mount} has the
-following prototype:
+ at item -R
+If source_file designates a directory, cp copies the directory and the entire
+subtree connected at that point. This option also causes symbolic links to be
+copied, rather than indirected through, and for cp to create special files
+rather than copying them as normal files. Created directories have the same
+mode as the corresponding source directory, unmodified by the process's umask.
 
- at example
-extern rtems_shell_cmd_t rtems_shell_MOUNT_Command;
- at end example
+ at item -v
+Cause cp to be verbose, showing files as they are copied.
 
- at c
- at c
- at c
- at page
- at subsection unmount - unmount disk
+ at end table
 
- at pgindex unmount
+For each destination file that already exists, its contents are overwritten if
+permissions allow, but its mode, user ID, and group ID are unchanged.
 
- at subheading SYNOPSYS:
+In the second synopsis form, target_directory must exist unless there is only
+one named source_file which is a directory and the -R flag is specified.
 
- at example
-unmount path
- at end example
+If the destination file does not exist, the mode of the source file is used as
+modified by the file mode creation mask (umask, see csh(1)). If the source file
+has its set user ID bit on, that bit is removed unless both the source file and
+the destination file are owned by the same user. If the source file has its set
+group ID bit on, that bit is removed unless both the source file and the
+destination file are in the same group and the user is a member of that group.
+If both the set user ID and set group ID bits are set, all of the above
+conditions must be fulfilled or both bits are removed.
 
- at subheading DESCRIPTION:
+Appropriate permissions are required for file creation or overwriting.
 
-This command unmounts the device at the specified @code{path}.
+Symbolic links are always followed unless the -R flag is set, in which case
+symbolic links are not followed, by default. The -H or -L flags (in conjunction
+with the -R flag), as well as the -P flag cause symbolic links to be followed
+as described above. The -H and -L options are ignored unless the -R option is
+specified. In addition, these options override eachsubhedading other and the
+command's actions are determined by the last one specified.
 
 @subheading EXIT STATUS:
 
@@ -1589,120 +637,88 @@ This command returns 0 on success and non-zero if an error is encountered.
 
 @subheading NOTES:
 
-TBD - Surely there must be some warnings to go here.
+NONE
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{unmount}:
-
- at example
-EXAMPLE_TBD
- at end example
-
- at subheading CONFIGURATION:
-
- at findex CONFIGURE_SHELL_NO_COMMAND_UNMOUNT
- at findex CONFIGURE_SHELL_COMMAND_UNMOUNT
-
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_UNMOUNT} to have this
-command included.
-
-This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_UNMOUNT} when all
-shell commands have been configured.
-
- at subheading PROGRAMMING INFORMATION:
-
- at findex rtems_shell_rtems_main_unmount
-
-The @code{unmount} is implemented by a C language function
-which has the following prototype:
-
- at example
-int rtems_shell_rtems_main_unmount(
-  int    argc,
-  char **argv
-);
- at end example
-
-The configuration structure for the @code{unmount} has the
-following prototype:
-
- at example
-extern rtems_shell_cmd_t rtems_shell_UNMOUNT_Command;
- at end example
-
- at c
- at c
- at c
- at page
- at subsection blksync - sync the block driver
-
- at pgindex blksync
-
- at subheading SYNOPSYS:
+The following is an example of how to use @code{cp} to
+copy a file to a new name in the current directory:
 
 @example
-blksync driver
+SHLL [/] # cat joel
+cat: joel: No such file or directory
+SHLL [/] # cp etc/passwd joel
+SHLL [/] # cat joel
+root:*:0:0:root::/:/bin/sh
+rtems:*:1:1:RTEMS Application::/:/bin/sh
+tty:!:2:2:tty owner::/:/bin/false
+SHLL [/] # ls
+drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
+drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
+-rw-r--r--   1   root   root         102 Jan 01 00:00 joel
+3 files 1710 bytes occupied
 @end example
 
- at subheading DESCRIPTION:
-
-This command XXX
-
- at subheading EXIT STATUS:
-
-This command returns 0 on success and non-zero if an error is encountered.
-
- at subheading NOTES:
-
-NONE
-
- at subheading EXAMPLES:
-
-The following is an example of how to use @code{blksync}:
+The following is an example of how to use @code{cp} to
+copy one or more files to a destination directory and
+use the same @code{basename} in the destination directory:
 
 @example
-EXAMPLE_TBD
+SHLL [/] # mkdir tmp
+SHLL [/] # ls tmp
+0 files 0 bytes occupied
+SHLL [/] # cp /etc/passwd tmp
+SHLL [/] # ls /tmp
+-rw-r--r--   1   root   root         102 Jan 01 00:01 passwd
+1 files 102 bytes occupied
+SHLL [/] # cp /etc/passwd /etc/group /tmp
+SHLL [/] # ls /tmp
+-rw-r--r--   1   root   root         102 Jan 01 00:01 passwd
+-rw-r--r--   1   root   root          42 Jan 01 00:01 group
+2 files 144 bytes occupied
+SHLL [/] #
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_BLKSYNC
- at findex CONFIGURE_SHELL_COMMAND_BLKSYNC
+ at findex CONFIGURE_SHELL_NO_COMMAND_CP
+ at findex CONFIGURE_SHELL_COMMAND_CP
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_BLKSYNC} to have this
+ at code{CONFIGURE_SHELL_COMMAND_CP} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_BLKSYNC} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_CP} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_blksync
+ at findex rtems_shell_rtems_main_cp
 
-The @code{blksync} is implemented by a C language function
-which has the following prototype:
+The @code{cp} command is implemented by a C language function which
+has the following prototype:
 
 @example
-int rtems_shell_rtems_main_blksync(
+int rtems_shell_rtems_main_cp(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{blksync} has the
+The configuration structure for the @code{cp} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_BLKSYNC_Command;
+extern rtems_shell_cmd_t rtems_shell_CP_Command;
 @end example
 
+ at subheading ORIGIN:
+
+The implementation and portions of the documentation for this
+command are from NetBSD 4.0.
+
 @c
 @c
 @c
@@ -1957,6 +973,303 @@ extern rtems_shell_cmd_t rtems_shell_DD_Command;
 @c
 @c
 @page
+ at subsection debugrfs - debug RFS file system
+
+ at pgindex debugrfs
+
+ at subheading SYNOPSYS:
+
+ at example
+debugrfs [-hl] path command [options]
+ at end example
+
+ at subheading DESCRIPTION:
+
+The command provides debugging information for the RFS file system.
+
+The options are:
+
+ at table @b
+ at item -h
+Print a help message.
+
+ at item -l
+List the commands.
+
+ at item path
+Path to the mounted RFS file system. The file system has to be mounted
+to view to use this command.
+ at end table
+
+The commands are:
+
+ at table @b
+ at item block start [end]
+Display the contents of the blocks from start to end.
+
+ at item data
+Display the file system data and configuration.
+
+ at item dir bno
+Process the block as a directory displaying the entries.
+
+ at item group start [end]
+Display the group data from the start group to the end group.
+
+ at item inode [-aef] [start] [end]
+Display the inodes between start and end. If no start and end is
+provides all inodes are displayed.
+
+ at table @b
+ at item -a
+Display all inodes. That is allocated and unallocated inodes.
+ at item -e
+Search and display on inodes that have an error.
+ at item -f
+Force display of inodes, even when in error.
+ at end table
+ at end table
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{debugrfs}:
+
+ at example
+SHLL [/] $ debugrfs /c data
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS
+ at findex CONFIGURE_SHELL_COMMAND_DEBUGRFS
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_DEBUGRFS} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_debugrfs
+
+The @code{debugrfs} command is implemented by a C language function which
+has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_debugrfs(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for @code{debugrfs} has the following
+prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_DEBUGRFS_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection df - display file system disk space usage
+
+ at pgindex df
+
+ at subheading SYNOPSYS:
+
+ at example
+df [-h] [-B block_size]
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command print disk space usage for mounted file systems.
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{df}:
+
+ at example
+SHLL [/] $ df -B 4K
+Filesystem     4K-blocks        Used   Available       Use%     Mounted on
+/dev/rda               124         1         124         0%   /mnt/ramdisk
+SHLL [/] $ df
+Filesystem     1K-blocks        Used   Available       Use%     Mounted on
+/dev/rda               495         1         494         0%   /mnt/ramdisk
+SHLL [/] $ df -h
+Filesystem     Size             Used   Available       Use%     Mounted on
+/dev/rda              495K        1K        494K         0%   /mnt/ramdisk
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_DF
+ at findex CONFIGURE_SHELL_COMMAND_DF
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_DF} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_DF} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_df
+
+The @code{df} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_main_df(
+  int argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{df} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_DF_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection dir - alias for ls
+
+ at pgindex dir
+
+ at subheading SYNOPSYS:
+
+ at example
+dir [dir]
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command is an alias or alternate name for the @code{ls}.
+See @ref{File and Directory Commands ls - list files in the directory, ls}
+for more information.
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{dir}:
+
+ at example
+SHLL [/] $ dir
+drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
+drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
+2 files 1608 bytes occupied
+SHLL [/] $ dir etc
+-rw-r--r--   1   root   root         102 Jan 01 00:00 passwd
+-rw-r--r--   1   root   root          42 Jan 01 00:00 group
+-rw-r--r--   1   root   root          30 Jan 01 00:00 issue
+-rw-r--r--   1   root   root          28 Jan 01 00:00 issue.net
+4 files 202 bytes occupied
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_DIR
+ at findex CONFIGURE_SHELL_COMMAND_DIR
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_DIR} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_DIR} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_dir
+
+The @code{dir} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_dir(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{dir} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_DIR_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection fdisk - format disk
+
+ at pgindex fdisk
+
+ at subheading SYNOPSYS:
+
+ at example
+fdisk
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_FDISK
+ at findex CONFIGURE_SHELL_COMMAND_FDISK
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_FDISK} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_FDISK} when all
+shell commands have been configured.
+
+ at c
+ at c
+ at c
+ at page
 @subsection hexdump - ascii/dec/hex/octal dump
 
 @pgindex hexdump
@@ -2229,49 +1542,151 @@ extern rtems_shell_cmd_t rtems_shell_HEXDUMP_Command;
 @c
 @c
 @page
- at subsection fdisk - format disk
+ at subsection ln - make links
 
- at pgindex fdisk
+ at pgindex ln
 
 @subheading SYNOPSYS:
 
 @example
-fdisk
+ln [-fhinsv] source_file [target_file]
+ln [-fhinsv] source_file ... target_dir
+ at end example
+
+ at subheading DESCRIPTION:
+
+The ln utility creates a new directory entry (linked file) which has
+the same modes as the original file.  It is useful for maintaining
+multiple copies of a file in many places at once without using up
+storage for the ``copies''; instead, a link ``points'' to the original
+copy.  There are two types of links; hard links and symbolic links.
+How a link ``points'' to a file is one of the differences between a
+hard or symbolic link.
+
+The options are as follows:
+ at table @b
+ at item -f
+Unlink any already existing file, permitting the link to occur.
+
+ at item -h
+If the target_file or target_dir is a symbolic link, do not follow it.
+This is most useful with the -f option, to replace a symlink which may
+point to a directory.
+
+ at item -i
+Cause ln to write a prompt to standard error if the target file
+exists.  If the response from the standard input begins with the
+character `y' or `Y', then unlink the target file so that the link may
+occur.  Otherwise, do not attempt the link.  (The -i option overrides
+any previous -f options.)
+
+ at item -n
+Same as -h, for compatibility with other ln implementations.
+
+ at item -s
+Create a symbolic link.
+
+ at item -v
+Cause ln to be verbose, showing files as they are processed.
+ at end table
+
+By default ln makes hard links.  A hard link to a file is
+indistinguishable from the original directory entry; any changes to a
+file are effective independent of the name used to reference the file.
+Hard links may not normally refer to directories and may not span file
+systems.
+
+A symbolic link contains the name of the file to which it is linked.
+The referenced file is used when an @i{open} operation is performed on
+the link.  A @i{stat} on a symbolic link will return the linked-to
+file; an @i{lstat} must be done to obtain information about the link.
+The @i{readlink} call may be used to read the contents of a symbolic
+link.  Symbolic links may span file systems and may refer to
+directories.
+
+Given one or two arguments, ln creates a link to an existing file
+source_file.  If target_file is given, the link has that name;
+target_file may also be a directory in which to place the link;
+otherwise it is placed in the current directory.  If only the
+directory is specified, the link will be made to the last component of
+source_file.
+
+Given more than two arguments, ln makes links in target_dir to all the
+named source files.  The links made will have the same name as the
+files being linked to.
+
+ at subheading EXIT STATUS:
+
+The @code{ln} utility exits 0 on success, and >0 if an error occurs.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+ at example
+SHLL [/] ln -s /dev/console /dev/con1
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_FDISK
- at findex CONFIGURE_SHELL_COMMAND_FDISK
+ at findex CONFIGURE_SHELL_NO_COMMAND_LN
+ at findex CONFIGURE_SHELL_COMMAND_LN
 
-This command is included in the default shell command set.
-When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_FDISK} to have this
-command included.
+This command is included in the default shell command set.  When
+building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_LN} to have this command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_FDISK} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_LN} when all
 shell commands have been configured.
 
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_ln
+
+The @code{ln} command is implemented by a C language function which
+has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_ln(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{ln} has the following
+prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_LN_Command;
+ at end example
+
+ at subheading ORIGIN:
+
+The implementation and portions of the documentation for this command
+are from NetBSD 4.0.
+
 @c
 @c
 @c
 @page
- at subsection dir - alias for ls
+ at subsection ls - list files in the directory
 
- at pgindex dir
+ at pgindex ls
 
 @subheading SYNOPSYS:
 
 @example
-dir [dir]
+ls [dir]
 @end example
 
 @subheading DESCRIPTION:
 
-This command is an alias or alternate name for the @code{ls}.
-See @ref{File and Directory Commands ls - list files in the directory, ls}
-for more information.
+This command displays the contents of the specified directory.  If
+no arguments are given, then it displays the contents of the current
+working directory.
 
 @subheading EXIT STATUS:
 
@@ -2279,64 +1694,443 @@ This command returns 0 on success and non-zero if an error is encountered.
 
 @subheading NOTES:
 
-NONE
+This command currently does not display information on a set of
+files like the POSIX ls(1).  It only displays the contents of
+entire directories.
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{dir}:
+The following is an example of how to use @code{ls}:
 
 @example
-SHLL [/] $ dir
+SHLL [/] $ ls
 drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
 drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
 2 files 1608 bytes occupied
-SHLL [/] $ dir etc
+SHLL [/] $ ls etc
 -rw-r--r--   1   root   root         102 Jan 01 00:00 passwd
 -rw-r--r--   1   root   root          42 Jan 01 00:00 group
 -rw-r--r--   1   root   root          30 Jan 01 00:00 issue
 -rw-r--r--   1   root   root          28 Jan 01 00:00 issue.net
 4 files 202 bytes occupied
+SHLL [/] $ ls dev etc
+-rwxr-xr-x   1  rtems   root           0 Jan 01 00:00 console
+-rwxr-xr-x   1   root   root           0 Jan 01 00:00 console_b
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_DIR
- at findex CONFIGURE_SHELL_COMMAND_DIR
+ at findex CONFIGURE_SHELL_NO_COMMAND_LS
+ at findex CONFIGURE_SHELL_COMMAND_LS
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_DIR} to have this
+ at code{CONFIGURE_SHELL_COMMAND_LS} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DIR} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_LS} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_dir
+ at findex rtems_shell_rtems_main_ls
 
-The @code{dir} is implemented by a C language function
+The @code{ls} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_dir(
+int rtems_shell_rtems_main_ls(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{dir} has the
+The configuration structure for the @code{ls} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_DIR_Command;
+extern rtems_shell_cmd_t rtems_shell_LS_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection md5 - compute the Md5 hash of a file or list of files
+
+ at pgindex md5
+
+ at subheading SYNOPSYS:
+
+ at example
+md5 <files>
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command prints the MD5 of a file. You can provide one or more
+files on the command line and a hash for each file is printed in a
+single line of output.
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{md5}:
+
+ at example
+SHLL [/] $ md5 shell-init
+MD5 (shell-init) = 43b4d2e71b47db79eae679a2efeacf31
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_MD5
+ at findex CONFIGURE_SHELL_COMMAND_MD5
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_MD5} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_MD5} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_md5
+
+The @code{df} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_main_md5(
+  int argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{md5} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_MD5_Command;
 @end example
 
 @c
 @c
 @c
 @page
+ at subsection mkdir - create a directory
+
+ at pgindex mkdir
+
+ at subheading SYNOPSYS:
+
+ at example
+mkdir  dir [dir1 .. dirN]
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command creates the set of directories in the order they
+are specified on the command line.  If an error is encountered
+making one of the directories, the command will continue to
+attempt to create the remaining directories on the command line.
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+If this command is invoked with no arguments, nothing occurs.
+
+The user must have sufficient permissions to create the directory.
+For the @code{fileio} test provided with RTEMS, this means the user
+must login as @code{root} not @code{rtems}.
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{mkdir}:
+
+ at example
+SHLL [/] # ls
+drwxr-xr-x   1   root   root         536 Jan 01 00:00 dev/
+drwxr-xr-x   1   root   root        1072 Jan 01 00:00 etc/
+2 files 1608 bytes occupied
+SHLL [/] # mkdir joel
+SHLL [/] # ls joel
+0 files 0 bytes occupied
+SHLL [/] # cp etc/passwd joel
+SHLL [/] # ls joel
+-rw-r--r--   1   root   root         102 Jan 01 00:02 passwd
+1 files 102 bytes occupied
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_MKDIR
+ at findex CONFIGURE_SHELL_COMMAND_MKDIR
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_MKDIR} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_MKDIR} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_mkdir
+
+The @code{mkdir} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_mkdir(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{mkdir} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_MKDIR_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection mldos - DOSFS file system format
+
+ at pgindex pwd
+
+ at subheading SYNOPSYS:
+
+ at example
+mkdir [-V label] [-s sectors/cluster] [-r size] [-v] path
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command formats a block device entry with the DOSFS file system.
+
+ at table @b
+ at item -V label
+
+ at item -s sectors/cluster
+
+ at item -r size
+
+ at end table
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{mkdos}:
+
+ at example
+SHLL [/] $ mkdos /dev/rda1
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_MKDOS
+ at findex CONFIGURE_SHELL_COMMAND_MKDOS
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_MKDOS} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_MKDOS} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_mkdos
+
+The @code{mkdos} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_mkdos(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{mkdos} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_MKDOS_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection mknod - make device special file
+
+ at pgindex mknod
+
+ at subheading SYNOPSYS:
+
+ at example
+mknod [-rR] [-F fmt] [-g gid] [-m mode] [-u uid] name [c | b]
+      [driver | major] minor
+mknod [-rR] [-F fmt] [-g gid] [-m mode] [-u uid] name [c | b]
+      major unit subunit
+mknod [-rR] [-g gid] [-m mode] [-u uid] name [c | b] number
+mknod [-rR] [-g gid] [-m mode] [-u uid] name p
+ at end example
+
+ at subheading DESCRIPTION:
+
+The mknod command creates device special files, or fifos.  Normally
+the shell script /dev/MAKEDEV is used to create special files for
+commonly known devices; it executes mknod with the appropriate
+arguments and can make all the files required for the device.
+
+To make nodes manually, the arguments are:
+
+ at table @b
+ at item -r
+Replace an existing file if its type is incorrect.
+
+ at item -R
+Replace an existing file if its type is incorrect.  Correct the
+mode, user and group.
+
+ at item -g gid
+Specify the group for the device node.  The gid operand may be a
+numeric group ID or a group name.  If a group name is also a numeric
+group ID, the operand is used as a group name.  Precede a numeric
+group ID with a # to stop it being treated as a name.
+
+ at item -m mode
+Specify the mode for the device node.  The mode may be absolute or
+symbolic, see @i{chmod}.
+
+ at item -u uid
+Specify the user for the device node.  The uid operand may be a
+numeric user ID or a user name.  If a user name is also a numeric user
+ID, the operand is used as a user name.  Precede a numeric user ID
+with a # to stop it being treated as a name.
+
+ at item name
+Device name, for example ``tty'' for a termios serial device or ``hd''
+for a disk.
+
+ at item  b | c | p
+Type of device.  If the device is a block type device such as a tape
+or disk drive which needs both cooked and raw special files, the type
+is b.  All other devices are character type devices, such as terminal
+and pseudo devices, and are type c.  Specifying p creates fifo files.
+
+ at item driver | major
+The major device number is an integer number which tells the kernel
+which device driver entry point to use.  If the device driver is
+configured into the current kernel it may be specified by driver name
+or major number.
+
+ at item minor
+The minor device number tells the kernel which one of several similar
+devices the node corresponds to; for example, it may be a specific
+serial port or pty.
+
+ at item unit and subunit
+The unit and subunit numbers select a subset of a device; for example,
+the unit may specify a particular disk, and the subunit a partition on
+that disk.  (Currently this form of specification is only supported
+by the bsdos format, for compatibility with the BSD/OS mknod).
+
+ at item number
+A single opaque device number.  Useful for netbooted computers which
+require device numbers packed in a format that isn't supported by
+-F.
+ at end table
+
+ at subheading EXIT STATUS:
+
+The @code{mknod} utility exits 0 on success, and >0 if an error occurs.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+ at example
+SHLL [/] mknod c 3 0 /dev/ttyS10
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_MKNOD
+ at findex CONFIGURE_SHELL_COMMAND_MKNOD
+
+This command is included in the default shell command set.  When
+building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_MKNOD} to have this command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_MKNOD} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_mknod
+
+The @code{mknod} command is implemented by a C language function which
+has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_mknod(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{mknod} has the following
+prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_MKNOD_Command;
+ at end example
+
+ at subheading ORIGIN:
+
+The implementation and portions of the documentation for this command
+are from NetBSD 4.0.
+
+ at c
+ at c
+ at c
+ at page
 @subsection mkrfs - format RFS file system
 
 @pgindex mkrfs
@@ -2442,63 +2236,273 @@ extern rtems_shell_cmd_t rtems_shell_MKRFS_Command;
 @c
 @c
 @page
- at subsection debugrfs - debug RFS file system
+ at subsection mount - mount disk
 
- at pgindex debugrfs
+ at pgindex mount
 
 @subheading SYNOPSYS:
 
 @example
-debugrfs [-hl] path command [options]
+mount [-t fstype] [-r] [-L] device path
 @end example
 
 @subheading DESCRIPTION:
 
-The command provides debugging information for the RFS file system.
+The @code{mount} command will mount a block device to a mount point
+using the specified file system. The files systems are:
 
-The options are:
+ at itemize @bullet
+ at item msdos - MSDOS File System
+ at item tftp  - TFTP Network File System
+ at item ftp   - FTP Network File System
+ at item nfs   - Network File System
+ at item rfs   - RTEMS File System
+ at end itemize
 
- at table @b
- at item -h
-Print a help message.
+When the file system type is 'msdos' or 'rfs' the driver is a "block
+device driver" node present in the file system. The driver is ignored
+with the 'tftp' and 'ftp' file systems. For the 'nfs' file system the
+driver is the 'host:/path' string that described NFS host and the
+exported file system path.
 
- at item -l
-List the commands.
+ at subheading EXIT STATUS:
 
- at item path
-Path to the mounted RFS file system. The file system has to be mounted
-to view to use this command.
- at end table
+This command returns 0 on success and non-zero if an error is encountered.
 
-The commands are:
+ at subheading NOTES:
 
- at table @b
- at item block start [end]
-Display the contents of the blocks from start to end.
+The mount point must exist.
 
- at item data
-Display the file system data and configuration.
+The services offered by each file-system vary. For example you cannot list the
+directory of a TFTP file-system as this server is not provided in the TFTP
+protocol. You need to check each file-system's documentation for the services
+provided.
 
- at item dir bno
-Process the block as a directory displaying the entries.
+ at subheading EXAMPLES:
 
- at item group start [end]
-Display the group data from the start group to the end group.
+Mount the Flash Disk driver to the '/fd' mount point:
 
- at item inode [-aef] [start] [end]
-Display the inodes between start and end. If no start and end is
-provides all inodes are displayed.
+ at example
+SHLL [/] $ mount -t msdos /dev/flashdisk0 /fd
+ at end example
+
+Mount the NFS file system exported path 'bar' by host 'foo':
+
+ at example
+$ mount -t nfs foo:/bar /nfs
+ at end example
+
+Mount the TFTP file system on '/tftp':
+
+ at example
+$ mount -t tftp /tftp
+ at end example
+
+To access the TFTP files on server '10.10.10.10':
+
+ at example
+$ cat /tftp/10.10.10.10/test.txt
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_MOUNT
+ at findex CONFIGURE_SHELL_COMMAND_MOUNT
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_MOUNT} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_MOUNT} when all
+shell commands have been configured.
+
+The mount command includes references to file-system code. If you do not wish
+to include file-system that you do not use do not define the mount command
+support for that file-system. The file-system mount command defines are:
+
+ at itemize @bullet
+ at item msdos - CONFIGURE_SHELL_MOUNT_MSDOS
+ at item tftp - CONFIGURE_SHELL_MOUNT_TFTP
+ at item ftp - CONFIGURE_SHELL_MOUNT_FTP
+ at item nfs - CONFIGURE_SHELL_MOUNT_NFS
+ at item rfs - CONFIGURE_SHELL_MOUNT_RFS
+ at end itemize
+
+An example configuration is:
+
+ at example
+#define CONFIGURE_SHELL_MOUNT_MSDOS
+#ifdef RTEMS_NETWORKING
+  #define CONFIGURE_SHELL_MOUNT_TFTP
+  #define CONFIGURE_SHELL_MOUNT_FTP
+  #define CONFIGURE_SHELL_MOUNT_NFS
+  #define CONFIGURE_SHELL_MOUNT_RFS
+#endif
+ at end example
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_mount
+
+The @code{mount} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_mount(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{mount} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_MOUNT_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection mv - move files
+
+ at pgindex mv
+
+ at subheading SYNOPSYS:
+
+ at example
+mv [-fiv] source_file target_file
+mv [-fiv] source_file... target_file
+ at end example
+
+ at subheading DESCRIPTION:
+
+In its first form, the mv utility renames the file named by the source
+operand to the destination path named by the target operand.  This
+form is assumed when the last operand does not name an already
+existing directory.
+
+In its second form, mv moves each file named by a source operand to a
+destination file in the existing directory named by the directory
+operand.  The destination path for each operand is the pathname
+produced by the concatenation of the last operand, a slash, and the
+final pathname component of the named file.
+
+The following options are available:
 
 @table @b
- at item -a
-Display all inodes. That is allocated and unallocated inodes.
- at item -e
-Search and display on inodes that have an error.
 @item -f
-Force display of inodes, even when in error.
- at end table
+Do not prompt for confirmation before overwriting the destination
+path.
+
+ at item -i
+Causes mv to write a prompt to standard error before moving a file
+that would overwrite an existing file.  If the response from the
+standard input begins with the character 'y', the move is attempted.
+
+ at item -v
+Cause mv to be verbose, showing files as they are processed.
+
 @end table
 
+The last of any -f or -i options is the one which affects mv's
+behavior.
+
+It is an error for any of the source operands to specify a nonexistent
+file or directory.
+
+It is an error for the source operand to specify a directory if the
+target exists and is not a directory.
+
+If the destination path does not have a mode which permits writing, mv
+prompts the user for confirmation as specified for the -i option.
+
+Should the @b{rename} call fail because source and target are on
+different file systems, @code{mv} will remove the destination file,
+copy the source file to the destination, and then remove the source.
+The effect is roughly equivalent to:
+
+ at example
+rm -f destination_path && \
+cp -PRp source_file destination_path && \
+rm -rf source_file
+ at end example
+
+ at subheading EXIT STATUS:
+
+The @code{mv} utility exits 0 on success, and >0 if an error occurs.
+
+ at subheading NOTES:
+
+NONE
+
+ at subheading EXAMPLES:
+
+ at example
+SHLL [/] mv /dev/console /dev/con1
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_MV
+ at findex CONFIGURE_SHELL_COMMAND_MV
+
+This command is included in the default shell command set.  When
+building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_MV} to have this command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_MV} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_mv
+
+The @code{mv} command is implemented by a C language function which
+has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_mv(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{mv} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_MV_Command;
+ at end example
+
+ at subheading ORIGIN:
+
+The implementation and portions of the documentation for this command
+are from NetBSD 4.0.
+
+ at c
+ at c
+ at c
+ at page
+ at subsection pwd - print work directory
+
+ at pgindex pwd
+
+ at subheading SYNOPSYS:
+
+ at example
+pwd
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command prints the fully qualified filename of the current
+working directory.
+
 @subheading EXIT STATUS:
 
 This command returns 0 on success and non-zero if an error is encountered.
@@ -2509,66 +2513,69 @@ NONE
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{debugrfs}:
+The following is an example of how to use @code{pwd}:
 
 @example
-SHLL [/] $ debugrfs /c data
+SHLL [/] $ pwd
+/
+SHLL [/] $ cd dev
+SHLL [/dev] $ pwd
+/dev
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS
- at findex CONFIGURE_SHELL_COMMAND_DEBUGRFS
+ at findex CONFIGURE_SHELL_NO_COMMAND_PWD
+ at findex CONFIGURE_SHELL_COMMAND_PWD
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_DEBUGRFS} to have this
+ at code{CONFIGURE_SHELL_COMMAND_PWD} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DEBUGRFS} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_PWD} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_debugrfs
+ at findex rtems_shell_rtems_main_pwd
 
-The @code{debugrfs} command is implemented by a C language function which
-has the following prototype:
+The @code{pwd} is implemented by a C language function
+which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_debugrfs(
+int rtems_shell_rtems_main_pwd(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for @code{debugrfs} has the following
-prototype:
+The configuration structure for the @code{pwd} has the
+following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_DEBUGRFS_Command;
+extern rtems_shell_cmd_t rtems_shell_PWD_Command;
 @end example
 
 @c
 @c
 @c
 @page
- at subsection cd - alias for chdir
+ at subsection rmdir - remove empty directories
 
- at pgindex cd
+ at pgindex rmdir
 
 @subheading SYNOPSYS:
 
 @example
-cd directory
+rmdir  [dir1 .. dirN]
 @end example
 
 @subheading DESCRIPTION:
 
-This command is an alias or alternate name for the @code{chdir}.
-See @ref{File and Directory Commands chdir - change the current directory, cd}
-for more information.
+This command removes the specified set of directories.  If no
+directories are provided on the command line, no actions are taken.
 
 @subheading EXIT STATUS:
 
@@ -2576,79 +2583,80 @@ This command returns 0 on success and non-zero if an error is encountered.
 
 @subheading NOTES:
 
-NONE
+This command is a implemented using the @code{rmdir(2)} system
+call and all reasons that call may fail apply to this command.
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{cd}:
+The following is an example of how to use @code{rmdir}:
 
 @example
-SHLL [/] $ cd etc
-SHLL [/etc] $ cd /
-SHLL [/] $ cd /etc
-SHLL [/etc] $ pwd
-/etc
-SHLL [/etc] $ cd /
-SHLL [/] $ pwd
-/
-SHLL [/] $ cd etc
-SHLL [/etc] $ cd ..
-SHLL [/] $ pwd
-/
+SHLL [/] # mkdir joeldir
+SHLL [/] # rmdir joeldir
+SHLL [/] # ls joeldir
+joeldir: No such file or directory.
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_CD
- at findex CONFIGURE_SHELL_COMMAND_CD
+ at findex CONFIGURE_SHELL_NO_COMMAND_RMDIR
+ at findex CONFIGURE_SHELL_COMMAND_RMDIR
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_CD} to have this
+ at code{CONFIGURE_SHELL_COMMAND_RMDIR} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_CD} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_RMDIR} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_cd
+ at findex rtems_shell_rtems_main_rmdir
 
-The @code{cd} is implemented by a C language function
+The @code{rmdir} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_rtems_main_cd(
+int rtems_shell_rtems_main_rmdir(
   int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{cd} has the
+The configuration structure for the @code{rmdir} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_CD_Command;
+extern rtems_shell_cmd_t rtems_shell_RMDIR_Command;
 @end example
 
 @c
 @c
 @c
 @page
- at subsection df - display file system disk space usage
+ at subsection rm - remove files
 
- at pgindex df
+ at pgindex rm
 
 @subheading SYNOPSYS:
 
 @example
-df [-h] [-B block_size]
+rm file1 [file2 ... fileN]
 @end example
 
 @subheading DESCRIPTION:
 
-This command print disk space usage for mounted file systems.
+This command deletes a name from the filesystem.  If the specified file name
+was the last link to a file and there are no @code{open} file descriptor
+references to that file, then it is deleted and the associated space in
+the file system is made available for subsequent use.
+
+If the filename specified was the last link to a file but there
+are open file descriptor references to it, then the file will
+remain in existence until the last file descriptor referencing
+it is closed.
 
 @subheading EXIT STATUS:
 
@@ -2660,74 +2668,72 @@ NONE
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{df}:
+The following is an example of how to use @code{rm}:
 
 @example
-SHLL [/] $ df -B 4K
-Filesystem     4K-blocks        Used   Available       Use%     Mounted on
-/dev/rda               124         1         124         0%   /mnt/ramdisk
-SHLL [/] $ df
-Filesystem     1K-blocks        Used   Available       Use%     Mounted on
-/dev/rda               495         1         494         0%   /mnt/ramdisk
-SHLL [/] $ df -h
-Filesystem     Size             Used   Available       Use%     Mounted on
-/dev/rda              495K        1K        494K         0%   /mnt/ramdisk
+SHLL [/] # cp /etc/passwd tmpfile
+SHLL [/] # cat tmpfile
+root:*:0:0:root::/:/bin/sh
+rtems:*:1:1:RTEMS Application::/:/bin/sh
+tty:!:2:2:tty owner::/:/bin/false
+SHLL [/] # rm tmpfile
+SHLL [/] # cat tmpfile
+cat: tmpfile: No such file or directory
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_DF
- at findex CONFIGURE_SHELL_COMMAND_DF
+ at findex CONFIGURE_SHELL_NO_COMMAND_RM
+ at findex CONFIGURE_SHELL_COMMAND_RM
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_DF} to have this
+ at code{CONFIGURE_SHELL_COMMAND_RM} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_DF} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_RM} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_df
+ at findex rtems_shell_rtems_main_rm
 
-The @code{df} is implemented by a C language function
+The @code{rm} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_main_df(
-  int argc,
+int rtems_shell_rtems_main_rm(
+  int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{df} has the
+The configuration structure for the @code{rm} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_DF_Command;
+extern rtems_shell_cmd_t rtems_shell_RM_Command;
 @end example
 
 @c
 @c
 @c
 @page
- at subsection md5 - compute the Md5 hash of a file or list of files
+ at subsection umask - set file mode creation mask
 
- at pgindex md5
+ at pgindex umask
 
 @subheading SYNOPSYS:
 
 @example
-md5 <files>
+umask [new_umask]
 @end example
 
 @subheading DESCRIPTION:
 
-This command prints the MD5 of a file. You can provide one or more
-files on the command line and a hash for each file is printed in a
-single line of output.
+This command sets the user file creation mask to @code{new_umask}.  The
+argument @code{new_umask} may be octal, hexadecimal, or decimal.
 
 @subheading EXIT STATUS:
 
@@ -2735,48 +2741,121 @@ This command returns 0 on success and non-zero if an error is encountered.
 
 @subheading NOTES:
 
-NONE
+This command does not currently support symbolic mode masks.
 
 @subheading EXAMPLES:
 
-The following is an example of how to use @code{md5}:
+The following is an example of how to use @code{umask}:
 
 @example
-SHLL [/] $ md5 shell-init
-MD5 (shell-init) = 43b4d2e71b47db79eae679a2efeacf31
+SHLL [/] $ umask
+022
+SHLL [/] $ umask 0666
+0666
+SHLL [/] $ umask
+0666
 @end example
 
 @subheading CONFIGURATION:
 
- at findex CONFIGURE_SHELL_NO_COMMAND_MD5
- at findex CONFIGURE_SHELL_COMMAND_MD5
+ at findex CONFIGURE_SHELL_NO_COMMAND_UMASK
+ at findex CONFIGURE_SHELL_COMMAND_UMASK
 
 This command is included in the default shell command set.
 When building a custom command set, define
- at code{CONFIGURE_SHELL_COMMAND_MD5} to have this
+ at code{CONFIGURE_SHELL_COMMAND_UMASK} to have this
 command included.
 
 This command can be excluded from the shell command set by
-defining @code{CONFIGURE_SHELL_NO_COMMAND_MD5} when all
+defining @code{CONFIGURE_SHELL_NO_COMMAND_UMASK} when all
 shell commands have been configured.
 
 @subheading PROGRAMMING INFORMATION:
 
- at findex rtems_shell_rtems_main_md5
+ at findex rtems_shell_rtems_main_umask
 
-The @code{df} is implemented by a C language function
+The @code{umask} is implemented by a C language function
 which has the following prototype:
 
 @example
-int rtems_shell_main_md5(
-  int argc,
+int rtems_shell_rtems_main_umask(
+  int    argc,
   char **argv
 );
 @end example
 
-The configuration structure for the @code{md5} has the
+The configuration structure for the @code{umask} has the
 following prototype:
 
 @example
-extern rtems_shell_cmd_t rtems_shell_MD5_Command;
+extern rtems_shell_cmd_t rtems_shell_UMASK_Command;
+ at end example
+
+ at c
+ at c
+ at c
+ at page
+ at subsection unmount - unmount disk
+
+ at pgindex unmount
+
+ at subheading SYNOPSYS:
+
+ at example
+unmount path
+ at end example
+
+ at subheading DESCRIPTION:
+
+This command unmounts the device at the specified @code{path}.
+
+ at subheading EXIT STATUS:
+
+This command returns 0 on success and non-zero if an error is encountered.
+
+ at subheading NOTES:
+
+TBD - Surely there must be some warnings to go here.
+
+ at subheading EXAMPLES:
+
+The following is an example of how to use @code{unmount}:
+
+ at example
+EXAMPLE_TBD
+ at end example
+
+ at subheading CONFIGURATION:
+
+ at findex CONFIGURE_SHELL_NO_COMMAND_UNMOUNT
+ at findex CONFIGURE_SHELL_COMMAND_UNMOUNT
+
+This command is included in the default shell command set.
+When building a custom command set, define
+ at code{CONFIGURE_SHELL_COMMAND_UNMOUNT} to have this
+command included.
+
+This command can be excluded from the shell command set by
+defining @code{CONFIGURE_SHELL_NO_COMMAND_UNMOUNT} when all
+shell commands have been configured.
+
+ at subheading PROGRAMMING INFORMATION:
+
+ at findex rtems_shell_rtems_main_unmount
+
+The @code{unmount} is implemented by a C language function
+which has the following prototype:
+
+ at example
+int rtems_shell_rtems_main_unmount(
+  int    argc,
+  char **argv
+);
+ at end example
+
+The configuration structure for the @code{unmount} has the
+following prototype:
+
+ at example
+extern rtems_shell_cmd_t rtems_shell_UNMOUNT_Command;
 @end example



More information about the vc mailing list