Shell学习笔记

文章目录

1 变量

1.1 变量命名规则

  • 只能用英文字母、数字和下划线,首个字母不能以数字开头;不能使用bash里的关键字(help命令可查)。

1.2 变量的定义与赋值

  • 使用” = “赋值:变量名与等号之间不能有空格;
_var=123
CurrentPath=`pwd`
  • 通过语句给变量赋值。
for file in `ls /etc` do 
echo $file
done

1.3 变量的使用

  • 使用一个定义过的变量,只需要在变量名前加 $ 。
echo $_var
_var2=$_var
  • 变量名可加{}来表示边界,如下所示,第一句变量名为CurrentPathIs, 第二句变量名为CurrentPath 。
echo $CurrentPathIs
echo ${CurrentPath}Is
  • 只读变量:用readonly命令可以将变量定义为只读变量,只读变量的值不能再被改变。试图更改只读变量的值时会报错:bash: _var: readonly variable 。
_var=123
readonly _var
_var=456
  • 删除变量:用unset命令可以删除变量。如下,第二句echo没有任何输出。
_var=123
echo $_var
unset _var
echo $_var

2 字符串

2.1 字符串的使用

字符串可以用单引号、双引号标识,也可以不用引号。

  • 单引号:任何字符都会原样输出,单引号字符串中的变量名无效;
  • 双引号:可以使用变量、转义字符
your_name="runoob"
# 使用双引号拼接
greeting="hello, "$your_name" !"
greeting_1="hello, ${your_name} !"
echo $greeting
echo $greeting_1

# 使用单引号拼接
greeting_2='hello, '$your_name' !'
greeting_3='hello, ${your_name} !'
echo $greeting_2
echo $greeting_3

2.2 字符串相关操作

  • 获取字符串的长度
string="abcd"
echo ${#string} #输出 4
  • 提取子字符串
string="runoob is a great site"
echo ${string:1:4} # 输出 unoo
  • 查找字符串
string="runoob is a great site"
echo `expr index "$string" io`  # 输出 4
echo `expr index "asdfvs" d`  # 输出 3
上一篇:Building a RESTful Web Service


下一篇:JavaScript对象机制