Linux文本编辑器ed

ed(editor)(转载)

功能说明:文本编辑器。
语  法:ed [-][-Gs][-p<字符串>][--help][--version][文件]
补充说明:ed 编辑器是 Linux 操作系统下最简单的文本编辑器。它是以行为单位对文件进行编辑的编辑器,而不像 MS-DOS 系统下的 edit 那样是以整个屏幕框架为单位对文件进行编辑的。因此,如果你已经习惯了使用 edit 这种风格的编辑器,那么你可能需要一段时间才能习惯 ed 的风格。但是这并不重要,因为 ed 的简便性可以使你很快上手的。
参  数:
  -G或--traditional   提供回兼容的功能。
  -p<字符串>   指定ed在command mode的提示字符。
  -s,-,--quiet或--silent   不执行开启文件时的检查功能。
  --help   显示帮助。
  --version   显示版本信息。




  ed 编辑器的调用很简单,如果你想新建一个文件,那么只需要在命令行窗口中敲入 ed 然后按下回车键即可:


[titan@localhost titan]$ ed <-


如果你想编辑一个已经存在的文件,那么你只要在 ed 的后面空一个,然后敲入文件名即可:


[titan@localhost titan]$ ed filename <-


激活 ed 命令后进入的是 ed 编辑器的命令行状态,这可能使一些初学者有些不习惯,如果你这时候随便敲入一些内容,系统会返回一个 ?,表示不知道你要执行什么任务:


[titan@localhost titan]$ ed <-


abcde <-


?


这时候你要明确几个编辑器命令,它们是:


a - 在文件的末尾添加新内容


i - 在文件的最后一行之前插入新内容


o - 把文件输入的最后一行(不论是原来存在的或者插入的)替换成新内容


. - 退出编辑文件模式进入命令行模式(注意:此时并没有退出 ed 编辑器)


w - 保存文件


q - 真正退出 ed 编辑器


下面我将就着几个命令举例说明一下。


[titan@localhost titan]$ ed <- 激活 ed 命令


a <- 告诉 ed 我要编辑新文件


My name is Titan. <- 输入第一行内容


And I love Perl very much. <- 输入第二行内容


. <- 返回 ed 的命令行状态


i <- 告诉 ed 我要在最后一行之前插入内容


I am 24. <- 将“i am 24.”插入“my name is titan.”和“and i love perl very much.”之间


. <- 返回 ed 的命令行状态


c <- 告诉 ed 我要替换最后一行输入内容


I am 24 years old. <- 将“i am 24.”替换成“i am 24 years old.”(注意:这里替换的是最后输的内容)


. <- 返回 ed 的命令行状态


w readme.text <- 将文件命名为“readme.text”并保存(注意:如果是编辑已经存在的文件,只需要敲入 w 即可)


q <- 完全退出 ed 编辑器


[titan@localhost titan]$ 返回到 Linux 系统的命令行状态


这是文件的内容是:


[titan@localhost titan]$ cat readme.text <-


My name is Titan.


I am 24 years old.


And I love Perl vrey much.


[titan@localhost titan]$



1,$n             打印文件内容,并加行号信息
n                到第n行(n为数字)
n                显示当前行的内容(n为字符)
d                删除该行
/xx/             查找xx
?xx?             反向查找xx
//               查找下一个
s/str1/str2/     当前行中替换str1为str2
ns/str1/str2/    在第n行中替换str1为str2
a,c,i            在当前行操作(a:在行后添加  c:修改行内容 i:在行前插入)
命令参数:
ed file 
出错时,h提供简单帮助信息,H提供详细帮助信息,用a,c,I进入输入方式,在单独一行上用,回到命令格式保存文件w.   Wq =x 
p  .p 显示当前行
=  显示当前行的行号
np  显示第n 行
1,6p  显示1-6行
$p   显示最后一行
1,$p显示所有行
+  显示下一行
- 显示上一行
n  显示当前行及行号
nn  显示第n行及行号
x,yn  显示x—y行及行号
l   显示当前行包括非打印字符
d   删除当前行
u   取消最后命令
s /str1/str2   用 str2 取代str1
s/str1//    删除str1
2s/str1/str2/n   第2 行的str1改为str2并显示修改后的行
s/str1/str2/g   全程替换
<first>,<end>m<line>
2,4m6    第2—4行移到第6行之后
t 块拷贝格式同m
r file  将文件读到当前行后
<first>,<end> w file   写块到文件
!cmd   执行shell命令
/模式/   正向查找命令
?模式?反向查找命令
//  继续找第2个
g/the/p   全程查找并显示
g/the/s/the/that/   全程查找the并用that代替the 
v与g命令相反
v/the/n   全程查找不包含the 并显示
无字符
^代表行首   $行尾    .任意字符   *任意多个与前面相同字符
/A….B/   以A开关B结尾中间3个任意
. s/. /.     第1个 . 当前行
         第2 个 . 任意字符
         第3个 . 字符
s/xx*/y/   用y代替2个或2个以上的x
s/x*y/y/   用y代替以x开头以y结束的所有字符
&代表第1个模式内容
/模式1/(模式1)/=/模式1/(&)/
[xz]表示x或z
[0-9]表示0-9的任意数字


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值