awk
awk是一种程序语言,对文档资料的处理具有很强的功能。awk擅长从格式化报文或从一个大的文本文件中抽取数据。
awk的命令格式为:
每一个命令(commands)都由两部分组成:一个模式(pattern)和一个相应的动作
 (action)
awk将一行文字按分隔符(filed-separator)分为多个域,依次记为$ 1,$ 2 . . . $ n。$0代表所有域值。因此awk更适合于以域为单位来处理文件。加之ARGIND等内置变量,使awk能处理多个文件。典型的应用为查找一个文件中的某个字段是否在另一个文件中出现。例子见我的另一篇博客【awk】诡异的错误,linux和windows换行的区别。但由于$0代表所有域,即整行,因此awk也有简单行处理能力。
sed
sed 是一个精简的、非交互式的编辑器。它能执行与编辑vi和emacs相同的编辑任务,但sed编辑器不提供交互使用方式,只能在命令行下输入编辑命令。
sed的命令格式为:
作为编辑器,当然少不了插入(a/、i/)、删除(d)、查找替换(s)等命令。详见sed命令详解 。
总结
- 如果文件是格式化的,即由分隔符分为多个域的,优先使用awk
- awk适合按列(域)操作,sed适合按行操作
- awk适合对文件的抽取整理,sed适合对文件的编辑。
- (想到再补~)
 
                   
                   
                   
                   
                             本文介绍了awk和sed两种强大的文本处理工具。awk适用于格式化文本的处理,特别适合按列进行数据抽取和整理;sed则作为非交互式文本编辑器,擅长执行文本编辑任务如替换、插入和删除。
本文介绍了awk和sed两种强大的文本处理工具。awk适用于格式化文本的处理,特别适合按列进行数据抽取和整理;sed则作为非交互式文本编辑器,擅长执行文本编辑任务如替换、插入和删除。
           
       
           
                 
                 
                 
                 
                 
                
               
                 
                 
                 
                 
                
               
                 
                 扫一扫
扫一扫
                     
              
             
                   1万+
					1万+
					
 被折叠的  条评论
		 为什么被折叠?
被折叠的  条评论
		 为什么被折叠?
		 
		  到【灌水乐园】发言
到【灌水乐园】发言                                
		 
		 
    
   
    
   
             
            


 
            