'expr'支持模式匹配和字符串操作。字符串表达式的优先级高于数值表达式和逻辑关系表达式。 'STRING : REGEX' 执行模式匹配。两端参数会转换为字符格式,且第二个参数被视为正则表达式(GNU基本正则),它默认会隐含前缀"^"。随后将第一个参数和正则模式做匹配。 如果匹配成功,且REGEX使用了'\('和'\)',则此表达式返回匹配到的,如果未使用'\('和'\)',则返回匹配的字符数。 如果匹配失败,如果REGEX中使用了'\('和'\)',则此表达式返回空字符串,否则返回为0。 只有第一个'\(...\)'会引用返回的值;其余的'\(...\)'只在正则表达式分组时有意义。 在正则表达式中,'\+','\?'和'\|'分表代表匹配一个或多个,0个或1个以及两端任选其一的意思。
'match STRING REGEX' 等价于'STRING : REGEX'。 'substr STRING POSITION LENGTH' 返回STRING字符串中从POSITION开始,长度最大为LENGTH的子串。如果POSITION或LENGTH为负数,0或非数值,则返回空字符串。 'index STRING CHARSET' CHARSET中任意单个字符在STRING中最前面的字符位置。如果在STRING中完全不存在CHARSET中的字符,则返回0。见后文示例。 'length STRING'
返回STRING的字符长度。
string="runoob is a great company"
echo `expr index "$string" is` 输出8
type 的使用https://blog.csdn.net/hudashi/article/details/7066190
linux重定向的讲解 : https://blog.csdn.net/jackyechina/article/details/54582146
>&2 即 1>&2 也就是把结果输出到和标准错误一样;
logger讲解 :https://www.cnblogs.com/xingmuxin/p/8656498.html
basename 是去除目录后剩下的名字
example:shell>temp=/home/temp/1.test
shell>base=`basename $temp`
shell>echo $base
结果为:1.test
dirname 是取目录
example:shell>temp=/home/temp/1.test
shell>dir=`dirname $temp`
shell>echo $dir
结果为:/home/temp