fc(1) MPE/iX Shell and Utilities fc(1)
______________________________________________________________________
NAME
fc -- display, fix, edit and re-enter previous commands
SYNOPSIS
fc [-r] [-e editor] [first [last]]
fc -l [-nr] [first [last]]
fc -s [old=new] [specifier]
DESCRIPTION
fc displays, edits, and re-enters commands which have been input
to an interactive shell. fc stands for fix commands. The envi-
ronment variable HISTSIZE contains the number of commands that
are accessible. If HISTSIZE is not defined, 128 commands are
accessible.
The shell stores these commands in a history file. When the
HISTFILE environment variable is defined as the name of a writ-
able file, the shell uses this as the history file; otherwise,
the history file is $HOME/.sh_history, if HOME is defined and the
file is writable. If the HOME variable is not defined, or the
file is not writable, the shell attempts to create a temporary
file for the history. If a temporary file cannot be created, the
shell does not keep a history file.
Note: A shell shares history (commands) with all shells that have
the same history file. A login shell truncates the history file
if it is more than HISTSIZE lines long.
Normally, the shell does not keep a history of commands executed
from a profile file or the ENV file. By default, however, it
begins recording commands in the history file when it encounters
a function definition in either of these set-up files. This
means that the HISTSIZE and HISTFILE variables must be set up
appropriately before the first function definition. If you do
not want the history file to begin at this time, use
set -o nolog
For further information, see sh(1) and set(1).
Any variable assignment or redirection that appears on the fc
command line affects both the fc command itself and the commands
that fc produces.
The first form of fc in the SYNOPSIS section puts you into an
editor with a range of commands to edit. When you leave the edi-
tor, fc inputs the edited commands to the shell.
The first and last command in the range are specified with first
and last. There are three ways to specify a command.
(a)
If the command specifier is an unsigned or positive number, fc
1
fc(1) MPE/iX Shell and Utilities fc(1)
______________________________________________________________________
edits the command with that number.
(b)
If the command specifier is a negative number -n, fc edits the
command that came n commands before the current command.
(c)
If the command specifier is a string, fc edits the most recent
command beginning with that string.
When you use the first form of the SYNOPSIS to edit a command,
you can omit either last or both first and last. If you omit
last, fc edits the single command specified by first. If you
omit both, fc edits the previous command that you entered to the
shell.
Options
fc accepts the following options:
-e editor
invokes editor to edit the commands. If you do not specify
the -e option, fc assumes that the environment variable
FCEDIT, if defined, contains the name of the editor for fc
to use. If FCEDIT is not defined, fc invokes ed(1) to edit
the commands.
-l simply displays the command list. This option does not edit
or re-enter the commands. If you omit last with this
option, fc displays all commands from the one indicated by
first through to the previous command entered. If you omit
both first and last, fc displays the 16 most recently
entered commands.
-n suppresses command numbers when displaying commands.
-r reverses the order of the commands in the command range.
-s re-enters exactly one command without going through an edi-
tor. If a command specifier is given, fc selects the com-
mand to re-enter as described earlier; otherwise, fc uses
the last command entered. To perform a simple substitution
on the command before re-entry, use a parameter of the form
old=new
The string new replaces the first occurrence of string old.
fc displays the (possibly modified) command before re-enter-
ing it.
ENVIRONMENT VARIABLES
fc uses the following environment variables:
2
fc(1) MPE/iX Shell and Utilities fc(1)
______________________________________________________________________
FCEDIT
contains the default editor to be used if none is specified
with the -e option. If this variable is unset or null, fc
uses ed to edit commands.
HISTFILE
contains the path name of the history file.
HISTSIZE
gives the maximum number of previous commands that are
accessible.
DIAGNOSTICS
Possible exit status values are:
0 If you specified -l, this indicates successful completion.
1 Failure due to any of the following:
-- missing history file
-- cannot find the desired line in the history file
-- cannot create temporary file
2 An invalid command line option or argument.
If fc executes one or more commands, the exit status of fc is the
exit status of the last executed command.
Messages
Because this utility is built into the MPE/iX Shell, see the
sh(1) man page for a complete list of error messages that you may
receive when using it.
PORTABILITY
POSIX.2. x/OPEN Portability Guide 4.0.
This is a command built into the KornShell on UNIX systems, but
not the Bourne Shell. On UNIX systems, the KornShell does not
truncate the history file at login.
NOTE
This command is built into the shell. r is a built-in alias for
fc -s. history is a built-in alias for fc -l.
MPE/iX NOTES
For information on how the current MPE/iX implementation may
affect the operation of this utility, see Appendix A, MPE/iX
Implementation Considerations.
SEE ALSO
alias(1), ed(1), history(1), print(1), r(1), read(1), sh(1),
vi(1), shedit(3)
3