当前位置: 首页 > news >正文

郑州炫彩网站建设企业网站的建设与实现

郑州炫彩网站建设,企业网站的建设与实现,全球最大互联网公司排名,980网站getopt 长选项 短选项 可选参数whilecaseifbasename函数变量shiftread 实现功能描述: 1. 实现可选参数传入 -c 或 --clearBuild。 2. 用shell脚本来实现选择,make时是否clean。 3. 可以打印用法帮助 和 作者信息。 #!/bin/bash# sh函数定义 *******…
  • getopt 长选项 短选项 可选参数
  • while
  • case
  • if
  • basename
  • 函数
  • 变量
  • shift
  • read

实现功能描述:

1. 实现可选参数传入 -c 或 --clearBuild。

2. 用shell脚本来实现选择,make时是否clean。

3. 可以打印用法帮助 和 作者信息。

#!/bin/bash# sh函数定义 *************************** 
usage()
{sh_name=$(basename $1);# sh_name='basename $1';  #或者这个echo "---------------用法:      $sh_name [选项] <(可选) -c >  <(可选) --clearBuild >命令行选项:-c  或 --clearBuild     默认: 0,表示是否清除make build的内容,数值为1表示清理,为0表示直接构建可选选项:-h  或 --help           打印帮助信息-a  或 --author         打印作者信息---------------"exit 1;
}
author()
{sh_name=$(basename $1);# sh_name='basename $1';  #或者这个 
echo "---------------脚本:  $sh_name 作者:  WJH    ---------------"exit 1;
}fun1_make()
{if [ "$1" = "clear" ] ; then# echo '执行清理并构建文件';echo 'in fun1_make(): 先clean 然后 make';# your cmd .....else# echo "不清除已经构建好的文件"echo "in fun1_make(): 直接make"# your cmd .....fi
}# sh变量定义与接收 *************************** # 输入指令
parameters=$(getopt -a -o c::ha -l clearBuild::,help,author -n "$0" -- "$@")
# echo "原始参数origin param is $@"if [ $? != 0 ]; thenecho "脚本解析失败..."; exit 1;
fi
# set命令将规范化后的命令参数分配到位置参数 $1 $2上面
eval set  -- "${parameters}"
# echo "规范后参数formatetd parameters=[$@]"# sh识别输入的选项·参数 *************************** 
while true; 
docase "$1" in-c | --clearBuild)case "$2" in"") echo "选项 --clearBuild 无参数";    clearBuild=${clearBuild:=1};  #赋默认值shift 2;  # 可选参数仍有空参数,需要shift 2, ;;*) echo "选项 --clearBuild 参数为:$2";  clearBuild=$2;  shift 2;;;esac;;-h|--help)usage $0 ;;;-a|--author)author $0 ;;;--)echo "clearBuild 默认值 1, clearBuild 现在数值:$clearBuild"; # 默认值见 68行echo "-----------------";  shift 1; break; ;;*)echo "Internal error!!!";  exit 1 ;;;esac
done# sh业务逻辑 *************************** # 比较字符串是否相等用 =, 并在两边留空格
# 比较数字用 -eq -gt -lt 等,分别为 equal; greater than; less than;等
if [ "$clearBuild" = "1" ] ; then  # 输入了 选项时 或 可选参数时  echo '>>>执行清理,然后构建';fun1_make clear;# your cmd .....elif [ "$clearBuild" = "0" ] ; then # 输入了 选项时 或 可选参数时 echo ">>>直接构建"fun1_make direct_build;# your cmd ..... else                                # 未输入 选项时 read -p '未输入 选项时:输入clear 确认清除并重新构建; 输入不为clear,直接构建  : ' tmp2if [ "$tmp2" = "clear" ] ; thenecho ">>>执行清理,然后构建";fun1_make $tmp2;# your cmd ..... else echo ">>>直接构建"fun1_make $tmp2;# your cmd .....fifiecho "-----------------";

参考文章

1.设计shell脚本选项:getopt - 骏马金龙 - 博客园 (cnblogs.com)

2.081_扩展篇_Shell编程(七)_函数(二)_自定义函数_哔哩哔哩_bilibili

3.Linux——shell脚本的传参方式 - moutory - 博客园 (cnblogs.com) 

http://www.dtcms.com/a/614447.html

相关文章:

  • 网站建设外文文献湖南省建设厅证件查询
  • 综合练习-02
  • 《Multimodal Machine Learning: A Survey and Taxonomy》论文主要内容
  • 设计师网站有哪些郑州抖音seo推广
  • 爪哇周赛 Round 1
  • 如何做双版网站查询网138网站域名
  • 常州建设工程监理员挂证网站上网站建设
  • [C++]拷贝构造函数使用规则以及注意事项
  • 针对RK3506J 开发嵌入式固件架构选型:RT-Thread SMP 与 Linux 部署方案对比
  • 襄阳教育云平台网站建设长沙seo优化推广
  • 10.2 MCP三驾马车:Prompts、Resources、Tools详解
  • Hilbert空间中随机变量的一点几何直觉
  • 网站制作费用贵不贵wordpress 视频
  • 深入 Linux 内核启动:从按下电源到用户登录的全景解剖
  • 建设环保网站查询系统天猫商家入驻需要什么条件
  • Java中的异常体系详解:深度解析与代码示例
  • 浙江邮电工程建设有限公司网站湖南长沙怎么注册工作室
  • 河南单位网站建设金坛网站制作
  • 红黑树进阶封装实现C++_map_set(源码剖析)
  • 服装设计手稿设计图外贸网站优化谷歌关键词排名
  • AJAX JSON学习
  • 网站商品管理功能中国建设工程信息网官网入口
  • python 图片解密:base64
  • springmvc请求参数
  • 第四章 防火墙设备管理
  • LLM之Agent(三十)|使用 LangGraph 构建可用于生产环境的智能聊天机器人:完整工程指南
  • 网站收录作用wordpress表格线
  • 成都网站设计师福鼎手机网站建设
  • ESP32模组选型速览
  • 模板网站的缺点重庆专业网站推广流程