- 6
- 0
- 约1.73万字
- 约 13页
- 2020-09-16 发布于广东
- 举报
使用命令行高效地进行文本编辑 /developerworks/cn/aix/library/au-textedit.html?ca=drs-cn
使用命令行高效地进行文本编辑
使用 cat、ed 和 sed 的快速编辑示例
级别: 中级
Michael Stutz (stutz@), 作者, 顾问
2007 年 2 月 16 日
简单研究一下可节省时间和精力的一些基本命令行文本编辑程序。文本编辑操作通常在文本编辑器应用程序中交互式地进行。然而,有些任务
可以直接从 UNIX® 命令行方便快捷地完成。此外,还可以在脚本中使用这些单命令行程序来自动化各种编辑过程。
引言
大多数 UNIX® 开发人员都选择 Emacs 、vi 或这两个文本编辑应用程序的众多变种、分支和克隆之一。操作员通常在所选的文本编辑器中打开文件,并交互
式地对文件指定和应用更改。
但是与在文本编辑器中打开文件相比,您通常可以在命令行更快地完成编辑工作。复杂的编辑过程可以从命令行进行编程和指定,并跨多个文件执行,从而
消除所有不必要的屏幕显示、光标移动和与文件的人工交互。一种很好的策略是在手边保留一些相关的命令行程序,以完成常见的编辑工作。它们不仅可以
为您节省时间(尤其是在涉及到多个文件的批处理操作中),而且您还可以在脚本中使用它们。
用于编辑和处理文本的单命令行程序是 Perl 和 AWK (以及最近的 Ruby )语言(当然还包括 Shell )中有名的传统功能。本文使用在所有系统上都随时可用
的三个最主要的命令行编辑工具来演示基本的文本编辑技术:cat、ed 和sed。下面的编辑示例首先从最简单和最常见的构造开始,并逐步过渡到较复杂的
构造。
使用 cat 进行编辑
使用cat (其名称表示“连接” )来连接文件和标准输入流,如清单 1 所示。世界上的懒鬼们还将它用作通用分页程序 (cat file) 和完整的文本编辑环境 (cat
file)。其语法的简单性无与伦比,而且对于文本编辑单命令行程序,它还为您提供了无需编辑器即可追加或插入文本的快捷方法。
清单 1. 使用 cat 来连接文件和标准输入流
$ (cat - input1 - input2 - input3 - input4) | mailx ted
Ted,
Take a look at these example files.
This is the first file ...
Ctrl-D
This is the second file ...
Ctrl-D
第1页 共13页 2007-3-2 11:10
使用命令行高效地进行文本编辑 /developerworks/cn/aix/library/au-textedit.html?ca=drs-cn
This is the third file -- note the fourth paragraph below ...
Ctrl-D
And heres the last file ...
Ctrl-D
$
将文本添加到文件结尾
然而,懒鬼也是讲策略的。当您需要将文本追加到文件结尾时,再没有比使用cat 更快的方法了:
$ cat file
line
line
line
Ctrl-D
$
当您在添加行时,按Ctrl-U 可以删除当前行,按Ctrl-Z 可
原创力文档

文档评论(0)