gitee地址:https://gitee.com/maminjie/ola

文章目录

  • 1. 简介
  • 2. 目录
  • 3. 使用
    • 3.1. 开发
    • 3.2. 执行
    • 3.3. 配置
  • 4. 结语

1. 简介

ola(哦啦),对,不是euler(欧拉) -_-

ola实际上是我为openEuler写的一个shell脚本框架。

ola可以让你体会到shell脚本的优雅,当然,你可以不相信,反正我着迷了……

ola采用了面向过程的编程思想,除了简单的原因,还因为我曾经是一个 C-Coder ……

2. 目录

一级目录 二级目录 说明
ola.sh 命令入口
src apps 应用(命令)脚本
libs 库脚本,基于标准命令实现
utils 通用脚本,框架的核心
test 测试脚本

备注:utils和libs中的脚本都是通用的,可以广泛的用在别的项目中。

3. 使用

3.1. 开发

如何开发一个功能?以helloworld.sh为例,如下:

method_def helloworldusage_helloworld() {echo "helloworld (hello): Hello to the world"
}alias_def helloworld hello
do_helloworld() {echo "hello world"
}
  1. 一个功能必须定义两个函数:do_helloworld,usage_helloworld

    备注:

    • do_xxx和usage_xxx后面的名字必须一致
    • usage_xxx第一行是功能的简述,通过’:'分割
  2. 一个功能通过method定义后才生效:method_def helloworld

    备注:

    • method定义的方法,最终在ola中以子命令的形式存在
  3. 一个功能别名通过alias定义:alias_def helloworld hello

    备注:

    • alias定义的别名,最终在ola中也以子命令的形式存在
    • ailas可以定义多个别名,比如:alias_def helloworld hello hw

3.2. 执行

通过执行ola.sh脚本来执行不同的功能。

  1. 查看所有帮助信息
bash ola.sh [-h|--help]
  1. 查看命令帮助信息
bash ola.sh h helloworld
bash ola.sh h hello
  1. 执行命令
bash ola.sh helloworld
bash ola.sh hello

3.3. 配置

有些命令需要先配置信息,ola的配置模板文件在config/ola.conf中,通过变量CONFIG_FILE指定配置文件。

ola提供了两个命令用来管理配置文件:init,set

bash ola.sh init
bash ola.sh set

init:初始化配置文件

set:设置/编辑配置文件

4. 结语

更多功能请自行解锁!

shell 知:ola相关推荐

  1. shell 知:外部命令

    文章目录 1. 介绍 2. 外部过滤器,程序和命令 2.1. 基本命令 2.1.1. ls 2.1.2. cat,tac 2.1.3. rev 2.1.4. cp 2.1.5. mv 2.1.6. r ...

  2. shell 知:bash

    文章目录 1. 介绍 1.1. 为什么使用shell编程 1.2. Sha-Bang(#!) 2. 基本 2.1. 特殊字符 2.1.1. 特殊字符 2.1.2. 控制字符 2.1.3. 空白 2.2 ...

  3. shell 知:sed

    文章目录 1. 初识sed 1.1. 模式空间 1.2. 寻址上的全局透视 1.3. 分组命令 2. 正则表达式 3. 基本sed命令 3.1. sed命令的语法 3.2. 替换 3.2.1. 替换元 ...

  4. shell 知:awk

    文章目录 1. 初识awk 1.1. hello world 1.2. awk程序设计模型 1.3. 记录和字段 1.3.1. 字段和引用的分离 1.3.2. 字段的划分:完整的问题 1.4. 表达式 ...

  5. 按键精灵开发者认证1-6题库

    这是以前整理的题库,包过. 题目:(前台)区域范围为(100,150)到(200,300)内的所有点是否均为"FFFFFF",是则弹出对话框"没有其他颜色",否 ...

  6. linux 终端 画圆,16个圆桌面Linux用户必须要知道的Shell命令

    16个圆桌面Linux用户必须要知道的Shell命令 16个圆桌面Linux用户必须要知道的Shell命令 日期:2014-05-16 浏览次数:20305 次 16个桌面Linux用户必须要知道的S ...

  7. 操作系统必知必会:Linux(1)常用的Shell命令

    操作系统必知必会:Linux(1)常用的Shell命令 常用的Shell命令 磁盘管理 cd df du mkdir pwd ls 文件管理 cat chmod chown cp diff file ...

  8. Shell:Lite OS在线调试工具知多少

    摘要:Shell作为Huawei Liteos在线调试工具,可以通过串口工具输入输出,支持常用的基本调试功能.同时用户可以新增定制的命令,新增命令需重新编译烧录后才能执行 本文分享自华为云社区< ...

  9. shell sort 最后一列排序_十个必知的排序算法|Python实例系列[1]

    实例内容: 十个必知的排序算法具体代码,并简略的得知每种算法对于不同长度数列的排序时间 十大排序: 1.冒泡排序2.选择排序3.插入排序4.希尔排序5.归并排序6.快速排序7.堆排序8.计数排序9.桶 ...

最新文章

  1. ubuntu修改登陆用户名称_修改ubuntu的用户名(注意用户名和主机名的区别)
  2. 设置gbk_我的gVim设置
  3. 数据库唯一主键如何实现幂等性?
  4. thinkphp require php 5.3.0 !,给thinkphp3.2用上composer
  5. kdbchk: the amount of space used is not equal to block size
  6. java dateTime + long
  7. Azure DevOps+Docker+Asp.NET Core 实现CI/CD(一 .简介与创建自己的代理池)
  8. javascript放在head和body的区别(w3c建议放在head标签中)
  9. 拆包--缓冲区查找包头及包尾偏移
  10. c++面向对象高级编程 学习十六 vptr和vtbl
  11. 王道考研学习笔记IP数据报格式IP数据报分片(超详细)
  12. mongodb分片+副本集集群环境搭建
  13. 果断收藏!Git和GitHub大神常用的20个技巧!
  14. delphi 中assert
  15. 8.GitLab 里程碑
  16. Power BI Desktop 中的数据源
  17. iOS开发之获取实时气压、相对高度
  18. 再见Python你好C语言,再见,Python 2 你好,Python 3
  19. 淘宝店铺如何装修呢?
  20. mds部署服务器系统,CephFS提供/添加/删除MDS

热门文章

  1. 生产者消费者_王敬之 | 消费者还是生产者
  2. BIM模型文件下载——多层住宅楼建筑群施工场地模拟模型
  3. 净值继续回落,短期弱势难改
  4. Android开发学习之基于ZBar实现微信扫一扫
  5. 金山词霸的字典引擎接口
  6. java 音频可视化_OpenGL ES 实现可视化实时音频
  7. 单片机实验说明<二>外部中断基本使用
  8. 程序员脱单秘籍丨带你用代码Kotlin看女性择偶标准
  9. iOS - 蓝牙开门智能门锁
  10. 硬仗酒全线升级,新概念新玩法新风尚