当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 如何使用 Linux 系统下的编辑器系列教程(1)

Unix/Linux
查看linux 下已经安装的软件包信息
linux 系统中软件raid 配置方法
linux 下MySQL服务器的启动与停止
linux 系统下FTP服务器配置方法
Linux系统下如何挂载U盘,硬盘,光驱
linux 系统下DHCP服务器 配置方法
Linux系统下软件的安装与卸载
在Fedora 9中启用ext4文件系统的方法
linux下挂载(mount)光盘镜像文件、移动硬盘、U盘、Windows网络共享和NFS网络共享
Linux查看文件夹大小的命令
LINUX系统grub常见错误分析
llinux fdisk分区工具 使用方法
linux 系统telnet乱码
rhythmbox 乱码的解决方法
linux单网卡绑定多ip
tar.gz 和tar.bz2 详细解释
linux学习笔记
linux系统rpm安装包详解
linux 服务器常用维护命令
出现The file /boot/grub/stage1 not read cor 解决办法

Unix/Linux 中的 如何使用 Linux 系统下的编辑器系列教程(1)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 115 ::
收藏到网摘: n/a


最简单的编辑器 ed
ed 编辑器是 Linux 操作系统下最简单的文本编辑器。它是以行为单位对文件进行编辑的编辑器,而不像 MS-DOS 系统下的 edit 那样是以整个屏幕框架为单位对文件进行编辑的。因此,如果你已经习惯了使用 edit 这种风格的编辑器,那么你可能需要一段时间才能习惯 ed 的风格。但是这并不重要,因为 ed 的简便性可以使你很快上手的。
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]$
怎么样,很容易掌握吧。不过我还是要给初学者一点经验方面的忠告:因为使用 ed 编辑文件时时看不到文件内容的,而且它不像 MS-DOS 下的 edit 那么灵活,请你在编辑文件是一定要仔细检查输入的内容以保证其正确性,避免反复往返于编辑状态和命令行状态之间,那样会浪费大量的时间。
这篇文章是我发布的第一版,如果存在错误或者疏漏之处还望各位不吝赐教。
myxd2000 回复于:2003-08-05 08:32:24 好得很,下一个该是什么呢?先介绍一下emacs吧