Shell 入门2 字符串、数组与注解
Shell 入门2 字符串、数组与注解
1.字符串
单引号str='This is a String'单引号:· 任何字符都会原样输出,单引号字符串中的变量是无效的;· 不能出现单引号(转义字符也无效)。双引号your_name='qinjx'str="Hello, I know your are \"$your_name\"! \n"双引号:· 双引号里可以有变量· 双引号里可以出现转义字符拼接字符串world="world"greeting="hello, "${world}" !"(方法一:无空格连续拼接)greeting_1="hello, ${world} !"(方法二:嵌入是拼接)echo $greeting $greeting_1获取字符串长度string="world"echo ${#string} #输出 5提取子字符串以下实例从字符串第 2 个字符开始截取 4 个字符:string="hello world!"echo ${string:1:4} # 输出 ello 注意角标是从0开始查找子字符串查找字符 is 的位置:string="world is so beautiful!"echo `expr index "$string" is` # 输出 7注意: 以上脚本中 "`" 是反引号,而不是单引号 "'",不要看错了哦。 expr 是表达式标识
2.Shell 数组
bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。定义数组在Shell中,用括号来表示数组,数组元素用"空格"符号分割开。定义数组的一般形式为:数组名=(值1 值2 ... 值n)例如:array_name=(value0 value1 value2 value3)或者array_name=(value0value1value2value3)还可以单独定义数组的各个分量:array_name[0]=value0array_name[1]=value1array_name
=valuen可以不使用连续的下标,而且下标的范围没有限制。读取数组读取数组元素值的一般格式是:${数组名[下标]}例如:valuen=${array_name
}使用@符号可以获取数组中的所有元素,例如:echo ${array_name[@]}获取数组的长度获取数组长度的方法与获取字符串长度的方法相同,例如:# 取得数组元素的个数length=${#array_name[@]}# 或者length=${#array_name[*]}# 取得数组单个元素的长度lengthn=${#array_name
}
3.Shell 注释
以"#"开头的行就是注释,会被解释器忽略。sh里没有多行注释,只能每一行加一个#号。只能像这样:#--------------------------------------------# this is a annotiation# you can write everything here,# it can’t be excuted##### you can user not only one ‘#’ #####如果在开发过程中,遇到大段的代码需要临时注释起来,过一会儿又取消注释,怎么办呢?每一行加个#符号太费力了,可以把这一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果。下一篇:https://www.geek-share.com/detail/2737623784.html
阅读更多- 【Shell】-- 入门笔记(1) : 变量、字符串、数组、参数及基本运算符
- shell 分割字符串存至数组
- 【shell基础】11、数组初步及字符串处理
- shell基础(六)--字符串和数组
- shell学习1--变量/数组/字符串
- shell字符串和数组
- shell 字符串数组的用法
- 算法入门 第3章 数组和字符串
- shell 分割字符串存至数组
- Shell 中mysql 查询以及shell字符串数组的使用
- 【Linux】shell字符串分割、数组访问、条件判断
- Shell 字符串拆分成数组
- Shell入门(三)之字符串
- shell 循环读取文件及字符串转为数组
- shell如何将文本文件字符串换行后转换为数组
- JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
- Shell入门(九)之字符串比较
- Shell 入门 4 数组
- shell 将字符串分割成数组
- javascript入门经典学习三(使用变量,字符串数组)(附js中文手册)