1.条件判断: if 使用: if condition; then commands; fi if else 使用: if condition; then commands; else if condition; then commands; else commands; fi 说明: if和else语句可以进行嵌套.if的条件判断部分可能会变得很长, 但可以用逻辑运算符将它变得简洁一些:  [ condition ] && action; # 如果condition为真,则执行acti…
参考资料: shell字符串分割再循环:http://www.shangxueba.com/jingyan/1633455.html linux shell中 if else以及大于.小于.等于逻辑表达式介绍:http://www.jb51.net/article/34332.htm Shell数组:shell数组的定义.数组长度:http://c.biancheng.net/cpp/view/7002.html shell 数组长度:http://blog.csdn.net/shaobingj…
linux shell 字符串操作(长度,查找,替换)详解 在做shell批处理程序时候,经常会涉及到字符串相关操作.有很多命令语句,如:awk,sed都可以做字符串各种操作. 其实shell内置一系列操作符号,可以达到类似效果,大家知道,使用内部操作符会省略启动外部程序等时间,因此速度会非常的快. 一.判断读取字符串值 表达式 含义 ${var} 变量var的值, 与$var相同     ${var-DEFAULT} 如果var没有被声明, 那么就以$DEFAULT作为其值 * ${var:-…
原文https://blog.csdn.net/wuyinggui10000/article/details/52779364 脚本开发中遇到的问题是:原java中的字符串分割操作(substring indexOf等)不知道怎么处理(比如/a/b/c/d.txt我想知道文件的名称) 查询相关资料得知,shell中可以采用标识符来做分割字符串,包括substring(0,index)和substring(index,last) ${var#*substr}会删除从0到substr子字符串最后出现…
引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解,shell中的数组. 数组的定义 何为数组?学过计算机编程语言的同学都知道,数组的特性就是一组数据类型相同的集合(不包括有一些编程语言提出来的关联数组的概念).那么shell中数组是怎么定义的呢,我们来看两种数据类型:一是数值类型,二是字符串类型:虽然shell本身是弱类型的,但也可以这么区分.…
个人博客网:https://wushaopei.github.io/    (你想要这里多有) 六.条件判断 1.基本语法 [ condition ](注意condition 前后要有空格) 注意:条件非空即为true,[ webcode ]返回true,[]返回false 2.常用判断条件 (1)两个整数之间比较 = 字符串比较 -lt 小于(less than)                   -le 小于等于(less equal) -eq 等于(equal)             …
一:字符串的截取 假定有定义变量VAR=mm/aa/bb/dd 1.获取字符串长度:echo "${#VAR}",即输出11: 2.非贪婪模式删除左边的,保留右边的:echo "${VAR#*/}",输出aa/bb/dd:这里的贪婪模式和正则表达式的类似,即*/以非贪婪模式从左往右匹配,将匹配到的字符均删除然后返回剩余的: 3.贪婪模式删除左侧匹配,返回右侧剩余:echo "${VAR##*/}",输出dd:这里*会一直往右匹配,然后删除最后匹配…
一 Linux 的字符串截取很有用.有八种方法. 假设有变量 var=http://www.linuxidc.com/123.htm 1  # 号截取,删除左边字符,保留右边字符. echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符 即删除 http:// 结果是 :www.linuxidc.com/123.htm . 2  ## 号截取,删除左边字符,保留右边字符. echo ${var##*/} ##*/ 表示从…
语法 [ 判断表达式 ] 文件夹或路径是否存在 -e 目标是否存在(exist) -d 是否为路径(directory) -f 是否为文件(file) [ -e text.sh ] || touch text.sh #text.sh不存在就创建 权限是否存在 -r 是否有读取权限(read) -w 是否有写入权限(write) -x 是否有执行权限(excute) [ -x text.txt ] && echo '有执行权限' #判断是否有执行权限 整数比较大小(只能用于整数比较) -eq…
数组  1.数组的定义及声明 变量:存储单个元素的内存空间 数组:存储多个元素的连续的内存空间,相当于多个变量的集合 数组名:整个数组只有一个名字 索引:编号从0开始,属于数值索引:bash的数组支持稀疏格式(索引不连续) 格式:   数组名[索引]   ${ARRAY_NAME[INDEX]} 必需用花括号{ }   注意:索引可支持使用自定义的索引格式,而不仅仅是数值格式,即为关联数组,bash4.0版本之后开始支持 声明数组:   declare -a ARRAY_NAME:声明一个索引数…