今天的学习笔记。

1. Shell提取字符串前几个字符(从左向右提取)

$ a=29122-gc0
$ echo ${a:0:5}
29122

2. Shell提取字符串后几位(从右向左提取)

$ a=29122-gc0
$ echo ${a:0-5}
2-gc0

3.提取文件名、去除后缀

$ f=abc.zip
$ basename $f
abc.zip
$ basename $f .zip
abc

4. Shell脚本变量名和等号及等号和值之间不能有空格

$ a = "string"
-ksh: a: not found [No such file or directory]

$ a= "string"
-ksh: string: not found [No such file or directory]

原因:Shell在解释命令时的原则是第一个符号标记只能是程序或者命令,有空格的时候第一个符号标记就是“a”,很显然,这不是一个命令或者程序。

5. Shell中,if 的条件判断表达式 “==”两边都应有空格

if [[ "$zipfile" == "" ]] #正确


if [[ "$zipfile"=="" ]] #错误

好好学习,天天向上!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐