shell 变量和参数

匿名 (未验证) 提交于 2019-12-02 23:49:02

1. shell 变量

your_name='world'

注意,变量名和等号之间不能有空格。同时,变量名的命名须遵循如下规则:

  • 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。
  • 中间不能有空格,可以使用下划线(_)。
  • 不能使用标点符号。
  • 不能使用 bash 里的关键字。

使用一个定义过的变量,只要在变量名前面加美元符号即可:

your_name='world' echo $your_name echo ${your_name}

变量名外面的花括号是可选的,加花括号是为了帮助解释器识别变量的边界。

使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。

your_sex='male' readonly your_sex

使用 unset 命令可以删除变量。

unset your_name

运行 shell 时,会同时存在三种变量:

  • 局部变量
  • 环境变量
  • shell变量

2. shell 字符串

your_name='world' echo "${your_name}"    #world echo '${your_name}'    #${your_name},单引号里的任何字符都会原样输出 echo "hello,"${your_name}""    #hello,world echo "hello,'${your_name}'"    #hello,world echo 'hello,'${your_name}''    #hello,world echo 'hello,"${your_name}"'    #hello,"${your_name}"

获取字符串长度:

your_name='world' echo ${#your_name}    #5

获取子字符串:

str="hello world." echo ${str:0:7}    #hello w  表示左边第1个字符开始取7个字符 echo ${str:2}      #llo world.  表示从左边3字符到最后 echo ${str:0-2}    #d.  表示从右边第2个字符到最后

3. shell 传递参数

在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n

#!/bin/bash echo "$0" echo "$1" echo "$2"  $./test.sh Alice 18

几个特殊的参数:

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!