ED Editor#
ed is the standard line oriented editor available on all Unix / Linux systems. It also comes with Mac OS/X, and is available for Windows.
ed is a line oriented editor (as apposed to a screen oriented editor). It requires no graphics and works on text one line at a time.
To evoke ed you use: ed myfile.txt
Note, the stuff in the () below represents a range of lines to be operated on. The stuff shown in the parenthesis is the default - what is used if you don't include an address range. If you do include it, don't use the parenthesis.
ed commands#
Save and quit commands#
(1,$)w | write (save) file |
(1,$)wq | write and quit |
(1,$)w FILE | write (save) to new file |
(1,$)wq FILE | write to new file and quit |
q | quit |
Q | quit - ignore changes |
e FILE | edit new file (erase prior contents) |
E FILE | edit new file even of old file changed |
f FILE | change current file name to FILE |
($)r FILE | read FILE into existing text |
Displaying text#
(.,.)p | print lines |
(.,.)n | print lines with line numbers |
(.,.)l | list lines (display control characters) |
Changing the current line#
. | current line |
N | goto line N |
$ | last line |
, or % | all lines |
.+1 | current line plus 1 |
return | move to and display next line |
- | previous line |
+N | N'th next line |
-N | N'th previous line |
; | .,$ |
/re/ | find regular expression |
// | repeat last regular expression |
?re? | search backwards |
(.)kX | mark line as X (save position) |
'X | the line marked as X (used anywhere a line number can be used) |
.= | display current line number |
= | display number of lines |
ed's regular expression syntax corresponds to grep's basic regular expression syntax. See grep
Changing text#
(.)a | append text after current line (up to end input) |
(.)i | insert text before current line (up to end input) |
(.,.)c | change (replace lines - delete & insert) |
(.,.)d | delete lines |
(.,.)s/re/replacement/ | replace text (once per line) |
(.,.)s/re/replacement/g | replace text (all per line) |
(.,.)s/re/replacement/N | replace text (N'th occurrence per line - start at 1) |
(.,.)s | repeat last substitution |
. | end input |
Misc commands#
(.,.+1)j | join addressed lines |
(.,.)m(.) | move lines |
(.,.)t(.) | copy (transfer) lines |
Regular expressions#
. | match any character |
\. | match period |
x* | match zero or more x's |
[xyz] | character class - match x, y, or z |
[a-z] | match a through z |
[^xyz] | match anything except x, y, or z |
^abc | match abc at the beginning of a line |
abc$ | match abc at the end of a line |
[:alnum:] | |
[:alpha:] | |
[:cntrl:] | |
[:digit:] | |
[:lower:] | |
[:print:] | |
[:space:] | |
[:upper:] |
Advanced features#
(1,$)g/re/command-list | execute command-list for each matching line each command must be on its own separate line lines may be continued by ending them in \ |
(1,$)G/re/ | interactively edit each matching line |
Add new attachment
Only authorized users are allowed to upload new attachments.
«
This particular version was published on 12-May-2013 12:43 by BlakeMcBride.
JSPWiki v2.10.4