吃饭睡觉打豆豆
二十出头的年纪,脚踏实地。毕竟青春只有一次

  入门

#bin/bash
 ehco "shell"

变量

  • 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。

  • 中间不能有空格,可以使用下划线

  • 不能使用标点符号
  • 不能使用bash里面关键字
有效变量:vare
le_pa_f
_djj
无效变量
2_ss
? d 
#skfn

使用变量加上$就可使用

只读变量 readonly

删除变量 unset

变量类型

  • 局部变量 局部变量在脚本或命令中定义,仅在当前shell实例中有效,其他shell启动的程序不能访问局部变量。
  • 环境变量 所有的程序,包括shell启动的程序,都能访问环境变量,有些程序需要环境变量来保证其正常运行。必要的时候shell脚本也可以定义环境变量。
  • shell变量 shell变量是由shell程序设置的特殊变量。shell变量中有一部分是环境变量,有一部分是局部变量,这些变量保证了shell的正常运行

字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号。

单引号

str='string'

单引号字符串的限制:

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;
  • 单引号字串中不能出现单独一个的单引号(对单引号使用转义符后也不行),但可成对出现,作为字符串拼接使用。

双引号

unquie="i am an adol"
str="Hello, \"$unquie\"! \n"
echo -e $str

输出结果为:

Hello, I am an anol"!

双引号的优点:

  • 双引号里可以有变量
  • 双引号里可以出现转义字符

拼接字符串

#单引号作用
bor='ddd'
#双引号作用
unqie="adol"
str="hello,\"$unqie\"!\n"
echo -e $str
#双引号拼接
suming="evv"
shuchu="hello,"$suming"!"
shuchu_1="hello,${suming}!"
echo $shuchu $shuchu_1
#单引号拼接
musing="lcv"
shuchu_2='hello,'$musing'!'
shuchu_3='hello,${musing}!'
#获取字符串长度
string="abcdef"
echo ${#string}
#提取子字符串
zifu="today is windy"
echo ${#zifu:5:2} #查找子字符串
#数组
qrray=(va1,va2,va3)
根据下标读取
注释可以用#代替
posted on 2021-10-12 17:45  测试小张  阅读(52)  评论(0编辑  收藏  举报