shell编程基础(1.SHELL范式)
来源:互联网 发布:java程序员职业路线 编辑:程序博客网 时间:2024/06/06 05:56
【1】SHELL范式
规定一个范式,有利于统一程序风格,增加可读性。对于编写SHELL,拷贝修改即可。
范式:
ASSIGN SHELL/指定壳
DESCRIPTION/程序说明
BODY/程序体
扩展:
1 ASSIGN SHELL/指定壳,如果不指定壳,默认使用Bourne SHELL,建议使用KSH
#!SHELL路径
1.1 CSH
#!/bin/csh
1.2 BSH
#!/bin/sh
1.3 KSH
#!/bin/ksh
2 DESCRIPTION/程序说明
#PROCEDURE NAME/程序名称
#PROCEDURE FUNCTION/程序功能说明
#AUTHOR/作者
#DATE/开发时间
#INPUT/输入
#OUTPUT/输出
#CALL/调用函数说明
#HISTORY/变更历史
3 BODY/程序体
INCLUDE LIBRARY /包含库文件
VARIABLE DEFINE/变量定义
FUNCTION DEFINE/函数定义
MAIN/程序入口
3.1 INCLUDE LIBRARY /包含库文件
. LIBRARY FILE/库文件名称
3.2 FUNCTION DEFINE/函数定义
#FUNCRION: FUNCTION NAME
#DESC : FUNCTION DESC
#INPUT : INPUT DESC
#OUTPUT : OUTPUT DESC
FUNCTION()
{
}
3.3 MAIN/程序入口(建议为)
程序启动说明
程序执行步骤
程序结束
exit 0
范式样例:
#!/bin/ksh
#################################################################################
# 程序名 : update.sh #
# 功能简介: 本程序完成WINV200R002M1D039P2升级 #
# 作者 : *************** #
# 开发时间: ******** #
# #
# 函数说明: 函数定义 #
# CheckBackupDir() 检查备分目录,不完毕则创建 #
# CheckDbinstallDir()检查SMP的数据库安装脚本目录 #
# CheckIfUpgraded() 检查是否已经升级 #
# UpdateSMPDir() 升级SMP的目录结构 #
# BackupDb() 备分数据库的脚本、数据 #
# BackupFile() 备分SMP目录的文件 #
# UpdateDb() 升级数据库 #
# UpdateFile() 升级文件 #
# #
# 修改历史: First Programming #
# 日期 : #
# 作者 : #
# 修改说明: #
#################################################################################
#应用库函数,要求库函数文件与当前SHELL同一目录
. ./comm_func.sh.rc
#定义变量
#程序名称
ProgName="SMP Platform Upgrade"
#标题
Title="WINV200R002 D039P2"
#目录和文件定义
WorkDir=`pwd`
LogDir=$WorkDir/log
TempDir=$WorkDir/temp
#日志与标志文件
ErrFile=$LogDir/update.err
LogFile=$LogDir/update.log
FlagFile=$LogDir/flag.flg
########################函数定义####################################
####################################################################
# 函数:PrintUsage
# 目的:定义打印用法函数。
# 输入:
# 输出:屏幕
####################################################################
PrintUsage()
{
echo "***************************************************************"
echo " NAME : ${ProgName} "
echo " VERSION : ${Title} "
echo " SYSTEM : WIN SMP "
echo " DESC : SMP platform or service upgrade "
echo " NOTICE : "
echo " COPYRIGHT : 2002, HUAWEI Tech. Co. Ltd. "
echo "***************************************************************"
echo " 1. Execute backup operation"
echo " 2. Execute upgrade operation"
echo " 3. Execute rollback operation"
echo " 0. Exit"
echo "Please input operation choice [0-3]:"
}
…
########### Main ##############
…
exit 0
##################### END OF PROCEDURE ###############
- shell编程基础(1.SHELL范式)
- Shell编程(基础)
- 【shell】shell 编程基础
- 基础shell编程-------shell学习(12)
- Shell编程基础(转)
- shell编程基础(3)
- shell编程基础(4)
- Shell编程基础 (转载)
- (转)Shell编程基础
- Shell编程基础(linux)
- Shell 编程1(基础)
- shell 编程基础(1)
- shell 编程基础(2)
- shell 编程基础(3)
- shell 编程基础(4)
- Shell编程基础(5.6)
- Shell编程基础(1)
- Shell编程基础(2)
- Linux图形界面中客户端、服务器、窗口管理器之间的关系
- linux lsof 命令参数详解(查看进程打开的文件)
- 松岛枫
- 松岛枫
- Android代码动态设置字体大小
- shell编程基础(1.SHELL范式)
- uboot官方FTP下载地址 .
- 使用PHP CURL的POST数据
- C# Monitor通知机制的一个有趣的实例
- 关于Tomcat自动加载问题
- SQL Server触发器原理及使用
- Uva100——乱搞题
- jquery表单验证小结
- 冒泡排序