内容摘要:Shell编程是Unix/Linux服务器管理和维护的基本功,嵌入文档(Here Documents)技术是BASH脚本语言提供的一个特征,是用于在当前脚本内部处理重定向的一种手段……
Shell编程是Unix/Linux服务器管理和维护的基本功,嵌入文档(Here Documents)技术是BASH脚本语言提供的一个特征,是用于在当前脚本内部处理重定向的一种手段。由于Unix从设计之初就是遵循“使用小而简单的工具进行无缝的集成”的理念,完成一项工作是需要大量的文本处理工具、流处理工具进行合作,通过标准输入、输出进行连接,将一个工具的处理结果转向另一个工具进行加工,直到得到最终的处理结果。因此,I/O重定向(redirection)是SHELL脚本的一个重要语言特征。但是,重定向技术也使整个处理过程显得凌乱、琐碎,对于初学者往往把握不好重定向的使用时机,甚至滥用重定向,而使得整个脚本里存在大量的中间文件,极大的损害了脚本语言的“优雅”程度。这是SHELL脚本学习过程中的一个常见问题。
为解决这个问题,SHELL脚本在设计上尽可能的减少中间文件,增加了“Here Documents”这一特征。Here Documents提供了在脚本内部保存原始文件,以及在脚本内部提供重定向的机制,是精简脚本的有效方式,也是反映脚本编程水平的重要特征。在各种资料中“Here Documents”有不同的翻译名称,例如“嵌入文档”、“内部文档”、“现场文档”等等。为了兼顾字面上的相近和使用上的形象,本文使用“嵌入文档”这一名称,并通过若干实例展示这一功能的使用方法。
一、问题的提出
事情是这样的,在8月初,笔者负责某信息学竞赛考试服务器的准备和维护工作(http://gait.buaa.edu.cn:8765),在考试结束需要将服务器上的考试成绩数据导出来,发送给竞赛主办方。服务器上安装的竞赛考试系统是在Linux下开发的专用系统,其中保存的成绩数据都是采用自定义格式的文本文件,并且由于系统开发并不是非常完善,没有提供很好的导出成绩的功能。而主办方当然希望看到一个直观的Excel文件的总成绩表。因此,需要紧急的手工处理一下,将服务器上的文本文件转换成Excel表出来。在这种情况下,当然首选的是SHELL脚本文件。
来源:IT168 作者:靳国杰 责编:豆豆技术应用
- Linux/Unix新闻
- Linux/Unix入门
- Linux/Unix命令
- Linux/Unix安装
- Linux/Unix编程
- Linux/Unix管理
- Linux/Unix桌面
- Linux/Unix内核
- Linux/Unix软件
- Linux/Unix发行版
- redhat/Fedora
- Ubuntu Linux
- IBM AIX
- FreeBSD
- Solaris
- NetBSD
- SCO Unix
- find基本用法
- ldd命令原理及用法例子
- su和sudo命令的区别与使用技巧
- Linux操作系统下的dd命令技巧
- 关于Top命令的参数详解
- 关于Tar命令的使用
- SSH实用技巧及常用命令使用
- Linux后台执行命令
- VI命令使用技巧集锦
- Vmstat命令列出的属性详解
- 如何查看及修改文件读写权限
- 最大可存储的单文件容量
- ext2/ext3文件系统介绍
- 常用压缩格式的压缩解压方法
- Linux系统的引导过程详细解析
- Configure参数解释说明
- Linux下硬盘和分区的命名方法
- 硬链接与软链接的区别
- 权限和所有权模型
- 存储设备的两种表示方法