In-Line Editors

In-line editing provides the ability to edit the current or previous commands before executing them. There are three in-line editing modes available: emacs, gmacs, and vi. The emacs and gmacs modes are basically the same, except for the way Ctl-t is handled. The inline editing mode is specified by setting the EDITOR or VISUAL variables, or with the set –o command. The editing window width is specified by the COLUMNS variable. For lines longer than the window width, a mark is displayed to notify position. The marks >, <, and * specify that the line extends to the right, left, or both sides of the window.

Vi Input Mode Commands

#, <Backspace> delete previous character
Ctl-d terminate the Korn shell
Ctl-v escape next character
Ctl-w delete previous word
Ctl-x, @ kill the entire line
<Return> execute current line
escape next erase or kill character

Vi Motion Edit Commands

[n]h, [n]<Backspace> move left one character
[n]l, [n]<Space> move forward one character
[n]b move backward one word
[n]B move backward one word; ignore punctuation
[n]w move forward one word
[n]W move forward one word; ignore punctuation
[n]e move to end of next word
[n]E move to end of next word; ignore punctuation
[n]fc move forward to character c
[n]Fc move backward to character c
[n]tc move forward to character before character c
[n]Tc move backward to character before character c
[n]; repeat last f, F, t, or T command
[n], repeat last f, F, t, or T command, but in opposite direction
0 move cursor to start of line
^ move cursor to first non-blank character in line
$ move cursor to end of line

Vi Search/Edit History Commands

[n]G get last command (or command n)
[n]j, [n]+ get next command from history file
[n]k, [n] get previous command from history file
n repeat last / or ? search
N repeat last / or ? search, except in opposite direction
/string search backward in history file for command that matches string
?string search forward in history file for command that matches string

Vi Text Modification Commands

a add text after current character
A append text to end of current line
[n]cX, c[n]X change current character up to cursor position defined by X
[n]dX, d[n] X delete current character up to cursor position defined by X
[n]yX, y[n]X copy current character up to cursor position defined by X into buffer
X used to define ending cursor position for c, d, or y commands
b backwards to beginning of word
e cursor to end of current word
w cursor to beginning of next word
W B E same as w b e, but ignore punctuation
0 before cursor to end of current line
$ cursor to end of current line

C change current character to end of line
D delete current character through end of line
i insert text left of the current character
I insert text before beginning of line
[n]p put previously yanked/deleted text after cursor
[n]P put previously yanked/deleted text before cursor
[n]rc replace current character with c
R replace text from cursor to <ESCAPE>
S delete entire line and enter input mode
yy copy current line into buffer
[n]x delete current character
[n]X delete previous character
[n]. repeat last text modification command
[n]∼ toggle case of current character
[n]_ append last word of previous ksh command
replace current word with filename that matches word*. For unique matches, append a / to directories and " " (space) for files.

Vi Other Edit Commands

u undo last text modification command
U undo text modification commands on current line
[n]v return output of fc –e command
Ctl-l redisplay current line
Ctl-j execute current line
Ctl-m execute current line
# insert a # (comment) at beginning of current line
= list files that match current word*
* replace current word with files that match word*
@_c insert value of alias c

Emacs/Gmacs In-Line Editor Commands

Ctl-b move left one character
Ctl-f move right one character
Esc-b move left one word
Esc-f move right one word
Ctl-a move to beginning of line
Ctl-e move to end of line
Ctl-h delete preceding character
Ctl-x delete the entire line
Ctl-k delete from cursor to end of line
Ctl-d delete current character
Esc-d delete current word
Ctl-w delete from cursor to mark
Ctl-y undo last delete (w/Esc-p)
Ctl-p get previous command from history file
Ctl-n get next command from history file
Ctl-o execute current command line and get next command line
Ctl-rstring search backward in history file for command that contains string
Ctl-c change current character to upper case
Esc-c change current word to upper case
Esc-l change current character to lower case
Esc-p save to buffer from cursor to mark
Esc-<SPACE>, Ctl-@ mark current location
Ctl-l redisplay current line
Ctl-]c move cursor forward to character c
Ctl-xCtl-x interchange the cursor and mark
erase delete previous character
Esc-Ctl-h delete previous word
Esc-h delete previous word
Ctl-t transpose current and next character (emacs)
Ctl-t transpose two previous characters (gmacs)
Ctl-j execute current line
Ctl-m execute current line
Esc-< get oldest command line
Esc-> get previous command line
Esc-n define numeric parameter n for next command (command can be Ctl-c, Ctl-d, Ctl-k, Ctl-n, Ctl-p, Ctl-r, Esc-., Ctl-]c, Esc-_, Esc-b, Esc-c, Esc-d, Esc-f, Esc-h, Esc-l, Esc-Ctl-h)
Esc-c insert value of alias _c (c cannot be b, c, d, f, h, l, or p)
Esc-., Esc-_ insert last word of previous command
Esc-Esc replace current word with filename that matches word*. For unique matches, append a / to directories and " " (space) for files
Esc-= list files that match current word*
Ctl-u multiply parameter of next command by 4
escape next character
Ctl-v display version of shell
Esc-# insert a # (comment) at beginning of current line

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.222.21.175