shell 知:ola
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"
}
一个功能必须定义两个函数:do_helloworld,usage_helloworld
备注:
- do_xxx和usage_xxx后面的名字必须一致
- usage_xxx第一行是功能的简述,通过’:'分割
一个功能通过method定义后才生效:method_def helloworld
备注:
- method定义的方法,最终在ola中以子命令的形式存在
一个功能别名通过alias定义:alias_def helloworld hello
备注:
- alias定义的别名,最终在ola中也以子命令的形式存在
- ailas可以定义多个别名,比如:alias_def helloworld hello hw
3.2. 执行
通过执行ola.sh脚本来执行不同的功能。
- 查看所有帮助信息
bash ola.sh [-h|--help]
- 查看命令帮助信息
bash ola.sh h helloworld
bash ola.sh h hello
- 执行命令
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相关推荐
- 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 ...
- shell 知:bash
文章目录 1. 介绍 1.1. 为什么使用shell编程 1.2. Sha-Bang(#!) 2. 基本 2.1. 特殊字符 2.1.1. 特殊字符 2.1.2. 控制字符 2.1.3. 空白 2.2 ...
- shell 知:sed
文章目录 1. 初识sed 1.1. 模式空间 1.2. 寻址上的全局透视 1.3. 分组命令 2. 正则表达式 3. 基本sed命令 3.1. sed命令的语法 3.2. 替换 3.2.1. 替换元 ...
- shell 知:awk
文章目录 1. 初识awk 1.1. hello world 1.2. awk程序设计模型 1.3. 记录和字段 1.3.1. 字段和引用的分离 1.3.2. 字段的划分:完整的问题 1.4. 表达式 ...
- 按键精灵开发者认证1-6题库
这是以前整理的题库,包过. 题目:(前台)区域范围为(100,150)到(200,300)内的所有点是否均为"FFFFFF",是则弹出对话框"没有其他颜色",否 ...
- linux 终端 画圆,16个圆桌面Linux用户必须要知道的Shell命令
16个圆桌面Linux用户必须要知道的Shell命令 16个圆桌面Linux用户必须要知道的Shell命令 日期:2014-05-16 浏览次数:20305 次 16个桌面Linux用户必须要知道的S ...
- 操作系统必知必会:Linux(1)常用的Shell命令
操作系统必知必会:Linux(1)常用的Shell命令 常用的Shell命令 磁盘管理 cd df du mkdir pwd ls 文件管理 cat chmod chown cp diff file ...
- Shell:Lite OS在线调试工具知多少
摘要:Shell作为Huawei Liteos在线调试工具,可以通过串口工具输入输出,支持常用的基本调试功能.同时用户可以新增定制的命令,新增命令需重新编译烧录后才能执行 本文分享自华为云社区< ...
- shell sort 最后一列排序_十个必知的排序算法|Python实例系列[1]
实例内容: 十个必知的排序算法具体代码,并简略的得知每种算法对于不同长度数列的排序时间 十大排序: 1.冒泡排序2.选择排序3.插入排序4.希尔排序5.归并排序6.快速排序7.堆排序8.计数排序9.桶 ...
最新文章
- ubuntu修改登陆用户名称_修改ubuntu的用户名(注意用户名和主机名的区别)
- 设置gbk_我的gVim设置
- 数据库唯一主键如何实现幂等性?
- thinkphp require php 5.3.0 !,给thinkphp3.2用上composer
- kdbchk: the amount of space used is not equal to block size
- java dateTime + long
- Azure DevOps+Docker+Asp.NET Core 实现CI/CD(一 .简介与创建自己的代理池)
- javascript放在head和body的区别(w3c建议放在head标签中)
- 拆包--缓冲区查找包头及包尾偏移
- c++面向对象高级编程 学习十六 vptr和vtbl
- 王道考研学习笔记IP数据报格式IP数据报分片(超详细)
- mongodb分片+副本集集群环境搭建
- 果断收藏!Git和GitHub大神常用的20个技巧!
- delphi 中assert
- 8.GitLab 里程碑
- Power BI Desktop 中的数据源
- iOS开发之获取实时气压、相对高度
- 再见Python你好C语言,再见,Python 2 你好,Python 3
- 淘宝店铺如何装修呢?
- mds部署服务器系统,CephFS提供/添加/删除MDS