shell脚本编程基础之自定义函数库
脚本编程知识点
${#VAR_NAME}:引用变量中字符的长度 A="25 90 100 120";
echo ${A#* }:针对A变量,#表示从左往右,*空格表示以空格为分隔符;A变量从左往右去掉第一个空格之前的内容;
echo ${A##* }:A变量从左往右,去掉最后一个空格之前的内容;
echo ${A% *}:%表示从右往左;从右往左去掉第一个空格之前的内容;
echo ${A%% *}:从右往左去掉最后一个空格之前的内容;
自定义函数库
[root@centos6 ~]# vim functions
SCREEN=`stty -F /dev/console size 2>/dev/null` #使用console终端代替当前终端,显示终端的行数和列数
COLUMN=${SCREEN#* }
[ -z $COLUMN ] && COLUMN=80
SPACE=$[$COLUMN-12]
RED='\033[1;31m'
GREEN='\033[1;32m'
REDUCTION='\033[0m' function success {
string=$1
REAL_SPACE=$[$SPACE-${#string}]
echo -n "$string"
for i in `seq 1 $REAL_SPACE`;do
echo -n " "
done
echo -e "[ ${GREEN}OK${REDUCTION} ]"
} function failed {
string=$1
REAL_SPACE=$[$SPACE-${#string}]
echo -n "$string"
for i in `seq $REAL_SPACE`;do
echo -n " "
done
echo -e "[${RED}FAILED${REDUCTION}]"
实现centos6启动服务成功或者失败的显示;成功打印OK,失败打印FAILED [root@centos6 ~]# vim test.sh #创建个测试脚本
#!/bin/bash
. /root/functions #导入自定义函数库 success "start service"
failed "stop service" [root@centos6 ~]# bash test.sh
start service [ OK ]
stop service [FAILED]
shell脚本编程基础之自定义函数库的更多相关文章
- SHELL脚本编程基础知识
SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...
- shell脚本编程基础介绍
Linux系统——shell脚本编程基础介绍 1.什么是shell 它是一个命令解释器,在linux/unix操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种操作输出的结果 ...
- Linux shell脚本编程基础之练习篇
shell脚本编程基础之练习篇. 1.编写一个脚本使我们在写一个脚本时自动生成”#!/bin/bash”这一行和注释信息. #!/bin/bash ] then echo "请输入一个参数& ...
- linux基础—课堂随笔_03 SHELL脚本编程基础
shell脚本编程基础 条件选择:if语句 选择执行: 注意:if语句可嵌套 单分支 if(开头)判断条件:then条件为真的分支代码 fi(结尾) 双分支 if(开头)判断条件:then条件为真的分 ...
- shell脚本编程基础
最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础 shell脚本是利用shell的功能 ...
- Linux Shell脚本编程-基础1
概述: shell脚本在Linux系统管理员的运维工作中非常重要.shell脚本能够帮助我们很方便的管理服务器,因为我们可以指定一个任务计划,定时的去执行某一个脚本以满足我们的需求.本篇将从编程基础 ...
- 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---57
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- shell脚本编程基础之函数
函数 作用:代码重用 定义函数: 方法1: function FUNCTION_NAME { #函数名和定义变量名一样,只能包含数字字母下划线,并且不能以数字开头 command } 方法2: FUN ...
- Linux基础篇–shell脚本编程基础
本章内容概要 编程基础 脚本基本格式 变量 运算 条件测试 配置用户环境 7.1 编程基础程序:指令+数据程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心 ...
随机推荐
- Spring-Cloud之Hystrix熔断器-5
一.在分布式系统中,服务与服务之间的依赖错综复杂,一种不可避免的情况就是某些服务会出现故障,导致依赖于它们的其他服务出现远程调度的线程阻塞 Hystrix是Netflix 公司开源的一个项目,它提供了 ...
- NMS(non maximum suppression,非极大值抑制)
"""nms输入的数据为box的左上角x1,y1与右下角x2,y2+confidence,rows=batch_size,line=[x1,y1,x2,y2,confid ...
- Date类的相关方法记录
1.Date类中的时间单位是毫秒,System.currentTimeMills()方法就是获取当前时间到1970年1月1日0时0分0秒(西方时间)的毫秒数. public class Test6 { ...
- 分页工具类PageResult
1.工具类 public class PageResult implements Serializable { private Long total;//总记录数 private List rows; ...
- catch socket error
whois_handler.dart import 'dart:io'; import 'package:async/async.dart'; import 'dart:convert'; class ...
- Java知识回顾 (13)序列化
本资料来自于runoob,略有修改. 整个过程都是 Java 虚拟机(JVM)独立的,也就是说,在一个平台上序列化的对象可以在另一个完全不同的平台上反序列化该对象. 类 ObjectInputStre ...
- JavaScript_proto_和prototype到底是什么玩意
_proto_和prototype到底有什么区别啊?是个什么东西啊? 在这里我头也比较大啊,小学语文没学好,所以组织能力比较差劲,所以尽量的咱用代码来解释吧. function too() { thi ...
- HTTP协议学习总结
一个web应用程序,往往是通过http协议进行前后端通信的.而作为一个web工程师,掌握HTTP协议因此也是Web开发必备的一项技能了,尤其是在工作了一定年限之后,更是深感该知识点的重要性.因此,将以 ...
- 深入理解jvm--性能监控工具
1.jvm监控工具介绍 1.1.jconsole JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动. 1.2.启动jconsole 通过JD ...
- selenium窗口句柄以及对话框处理
多窗口.句柄: 1.获取当前句柄:driver.current_window_handle 2.获取所有句柄:driver.window_handles 3.切换句柄:driver.switch_to ...