shell script编程应用—写网页/报告生成器
来源:互联网 发布:导购网源码 编辑:程序博客网 时间:2024/05/13 22:58
使用shell script启动一个项目-报告生成器:从网页开始
第一阶段:最小的文档
下面是一个最简单的HTML文档:
<HTML> <HEAD> <TITLE>Page Title</TITLE> </HEAD> <BODY> Page body. </BODY> </HTML>
定义其文件名为:foo.html。在主机中的位置为foo_path(查看位置后,将实际位置替换该变量即可)。
在浏览器中输入:“file:///foo_path/foo.html”这个URL地址即可查看文件。
再创建一个名为:sys_info_page.sh的文件。并输入以下程序:
#!/bin/bash#program to output a system information pageecho "<HTML> <HEAD> <TITLE>system information report</TITLE> </HEAD> <BODY> <H1>system information report</H1> </BODY> </HTML>"
保存文件。
在命令行输入:
chmod 755 sys_info_page.sh
./sys_info_page.sh
即可看到这个 HTML文档中的文本显示在屏幕上。
如何使用浏览器查看网页呢?
在命令行输入:
./sys_info_page > sys_info_page.html
open sys_info_page.html(基于mac)
或:
firefox sys_info_page.html(基于linux)
即可。
第二阶段:加入一些数据
常量和变量
shell script中,常用大写字母表示常量,用小写字母来表示变量。我们将sys_info_page.sh文件稍作修改:增加一个常量来代替以后会多次出现的字符串等,这样在需要修改的时候,只需要在常量的定义处进行修改即可。
#!/bin/bash#program to output a system information pageTITLE="system information report FOR $HOSTNAME"echo "<HTML> <HEAD> <TITLE>$TITLE</TITLE> </HEAD> <BODY> <H1>$TITLE</H1> </BODY> </HTML>"
注意到代码中的$HOSTNAME,HOSTNAME是你本机的名称。
下面,把报告创建的日期、时间以及报告创建者的用户名加入代码中:
使用here文档添加内容
here文档是I/O重定向的另外一种方式,我们在脚本中嵌入正文文本,然后将其输出到一个命令的标准输入中,其工作方式如下:
command << tokentexttoken
其中,command是接受标准输入的命令名,token用来指示嵌入文本的结尾。现在使用here文档来改写我们的sys_info_page.sh文档。
#!/bin/bash#program to output a system information pageCURRENT_TIME=$(date +"%x %r %Z")TIME_STAMP="Generated $CURRENT_TIME, by $USER"TITLE="system information report FOR $HOSTNAME"cat << _EOF_<HTML> <HEAD> <TITLE>$TITLE</TITLE> </HEAD> <BODY> <H1>$TITLE</H1> <P>$TIME_STAMP<P> </BODY> </HTML>_EOF_
这里用cat和EOF字符串替换echo达到了一样的效果。这样有什么好处呢?
如下图:
我们可以看到:
这里shell将引号看做了普通字符输出。这样以来,我们就可以在here文档中随意嵌入引号。
另外,here文档接受标准输入和任何命令一起使用,这里,我们向ftp程序传递一系列的命令,从而从远程ftp服务器上获取一个文件。
#!/bin/bash#script to retrieve a file via FTPFTP_SERVER=ftp.n1.dabian.orgFTP_PATH=/debian/dists/lenny/main/installer-i386/current/images/cdromREMOTE_FILE=debian-cd_info.tar.gzftp -n << EOFopen $FTP_SERVERuser anonymous me@linuxboxcd $FTP_PATHhashget $REMOTE_FILEbyeEOFls -l $REMOTE_FILE
- shell script编程应用—写网页/报告生成器
- shell script基础编程
- Shell编程(Shell Script)
- Linux shell编程 14 ---- 学习shell script
- 基于Shell的网页相册生成器
- shell——script
- shell script编程小结--附带实例
- Linux——shell script
- web实验报告——JSP动态网页编程
- shell Script
- shell script
- Shell script
- shell script
- shell script
- shell script
- shell script
- shell script
- shell script
- 设计模式-工厂方法模式
- jquery选择器
- c#实现图像图像卷积与滤波——高斯平滑
- BFS,DFS等搜索题目总结
- ubuntu 开机报系统错误解决办法
- shell script编程应用—写网页/报告生成器
- C++ 读取一行带有空格的字符串
- 《APUE》笔记-第六章-系统数据文件和信息
- 华为交换机路由器最新默认密码大全
- final关键字
- 欢迎使用CSDN-markdown编辑器
- Reinforcement Learning
- iOS——资源整合
- Ubuntu下的QQ-For-Linux 安装