Note that % is used in Ex commands to mean current file. If you want a %
in your command, it must be escaped as `\%
'.
However if % is the
first character, it stands as the address for the whole file.
Similarly, `#
' expands to the previous file. The previous file is
the first file in :args listing. This defaults
to the previous file in the VI sense if you have one window.
:sh | Execute a subshell in another window |
:[x,y]!<cmd> | Execute a shell <cmd> [on lines x through y; % is replace by current file, \% is changed to % |
:[x,y]!! [<args>] | Repeat last shell command [and append <args>]. |
:!<cmd> | Just execute command and display result in a buffer. |
:!! <args> | Repeat last shell command and append <args> |
<count> !<move><cmd> | The shell executes <cmd>, with standard
input the lines described by <count><move>,
next the standard output replaces those lines
(think of `cb ', `sort ', `nroff ', etc.).
|
<count> !!<cmd> | Give <count> lines as standard input to the shell <cmd>, next let the standard output replace those lines. |
:[x,y] w !<cmd> | Let lines x to y be standard input for <cmd> (notice the <sp> between w and !). |
:<address>r !<cmd> | Put the output of <cmd> after the line <address> (default current). |
:<address>r <name> | Read the file <name> into the buffer after the line <address> (default current). |