02-shell-变量和字符串

Posted 爱学习de测试小白

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了02-shell-变量和字符串相关的知识,希望对你有一定的参考价值。

目录

变量种类

变量名命名规则

字符串

单双引号区别

字符串常用操作


变量种类

  • 系统变量:$PATH  $BASH
  • 用户自定义变量:变量名=变量值(***等号前后不能有空格)
#!/bin/bash

# 系统变量
echo $PATH
echo $BASH

# 用户自定义变量
# 注意等号前后不能有空格
name=大海
age=27
# 使用变量在变量前加一个$符,如下
# 变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界
echo $name$age
echo ${name}${age}

变量名命名规则

  • 首个字符必须为字母(a-z,A-Z)。
  • 中间不能有空格,可以使用下划线(_)。
  • 不能使用标点符号。
  • 不能使用bash里的关键字(可用help命令查看保留关键字)

字符串

  • 说明:字符串可以用单引号,也可以用双引号,也可以不用引号
#!/bin/bash

echo '我叫大海'  # 单引号
echo "今年27"    # 双引号
echo 职业:软件测试工程师  # 无引号

单双引号区别

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
  • 单引号字串中不能出现单引号(对单引号使用转义符后也不行)
  • 双引号里可以有变量
  • 双引号里可以出现转义字符
#!/bin/bash

# 单引号变量无效原样输出--》大家好,我是$name
name='大海'
echo '大家好,我是$name'

# 双引号可使用变量,输出--》大家好,我是大海
name='大海'
echo "大家好,我是$name"

# 双引号可以使用转义,输出--》大家好,我是"大海"
name='大海'
echo "大家好,我是\\"$name\\""

字符串常用操作

#!/bin/bash

# 字符串拼接,直接连着写即可
name="大海"
say="hello, "$name" !"
say_1="hello, ${name} !"
echo $say $say_1

# 获取字符串长度
string="abcdef"
echo ${#string} #输出 6

# 截取字符串
string="大海 27 测试工程师"
echo ${string:2:3} # 27

以上是关于02-shell-变量和字符串的主要内容,如果未能解决你的问题,请参考以下文章

02.shell字符串

如何在导航抽屉活动模板中的片段之间传递字符串变量

web代码片段

将数据从片段列表视图项传递到活动字符串变量 onitemclicklistener

append() 在这个代码片段中是如何工作的?与特定变量混淆[重复]

Vscode在使用变量之前转义斜杠