02-shell-变量和字符串

简介: 02-shell-变量和字符串

变量种类

  • 系统变量:$PATH  $BASH
  • 用户自定义变量:变量名=变量值(***等号前后不能有空格)
1. #!/bin/bash
2. 
3. # 系统变量
4. echo $PATH
5. echo $BASH
6. 
7. # 用户自定义变量
8. # 注意等号前后不能有空格
9. name=大海
10. age=27
11. # 使用变量在变量前加一个$符,如下
12. # 变量名外面的花括号是可选的,加不加都行,加花括号是为了帮助解释器识别变量的边界
13. echo $name$age
14. echo ${name}${age}

变量名命名规则

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

字符串

  • 说明:字符串可以用单引号,也可以用双引号,也可以不用引号
1. #!/bin/bash
2. 
3. echo '我叫大海'  # 单引号
4. echo "今年27"    # 双引号
5. echo 职业:软件测试工程师  # 无引号

单双引号区别

  • 单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
  • 单引号字串中不能出现单引号(对单引号使用转义符后也不行)
  • 双引号里可以有变量
  • 双引号里可以出现转义字符
1. #!/bin/bash
2. 
3. # 单引号变量无效原样输出--》大家好,我是$name
4. name='大海'
5. echo '大家好,我是$name'
6. 
7. # 双引号可使用变量,输出--》大家好,我是大海
8. name='大海'
9. echo "大家好,我是$name"
10. 
11. # 双引号可以使用转义,输出--》大家好,我是"大海"
12. name='大海'
13. echo "大家好,我是\"$name\""

字符串常用操作

1. #!/bin/bash
2. 
3. # 字符串拼接,直接连着写即可
4. name="大海"
5. say="hello, "$name" !"
6. say_1="hello, ${name} !"
7. echo $say $say_1
8. 
9. # 获取字符串长度
10. string="abcdef"
11. echo ${#string} #输出 6
12. 
13. # 截取字符串
14. string="大海 27 测试工程师"
15. echo ${string:2:3} # 27

相关文章
|
5月前
|
存储 Shell Linux
八、Linux Shell 脚本:变量与字符串
Shell脚本里的变量就像一个个贴着标签的“箱子”。装东西(赋值)时,=两边千万不能有空格。用单引号''装进去的东西会原封不动,用双引号""则会让里面的$变量先“变身”再装箱。默认箱子只能在当前“房间”(Shell进程)用,想让隔壁房间(子进程)也能看到,就得给箱子盖个export的“出口”戳。此外,Shell还自带了$?(上条命令的成绩单)和$1(别人递进来的第一个包裹)等许多特殊箱子,非常有用。
531 2
|
存储 Java Shell
Shell 变量
10月更文挑战第2天
205 1
shell脚本变量 $name ${name}啥区别
shell脚本变量 $name ${name}啥区别
|
Java Shell Linux
Shell 变量设置
Shell设置变量
233 5
|
JavaScript 关系型数据库 Shell
Linux shell编写技巧之随机取字符串(一)
本文介绍了Linux Shell脚本的编写技巧,包括环境配置、变量命名规则和缩进语法,并提供了一个实例练习,展示如何使用`$RANDOM`变量和`md5sum`命令来生成随机的8位字符串。
321 4
|
分布式计算 大数据 Shell
MaxCompute产品使用合集之odps shell如何将ech变量的结果集合写入文件,并且指定服务器的位置
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
239 10
|
Shell
[shell]在curl测试的data参数中引用变量
[shell]在curl测试的data参数中引用变量
714 1
|
Java Shell Linux
Shell 变量设置25-1
Shell编程语言是一种非类型的解释型语言,无需像C++/Java那样事先声明变量。通过赋值即可定义变量,在Linux支持的所有Shell中均适用。变量分为局部变量与环境变量,前者仅限于定义脚本内使用,后者可在其派生的子进程中使用。常见系统变量如$0表示当前程序名称,$n表示第n个参数(n=1,2,...,9),$*代表所有参数,$#代表参数个数,$?表示命令执行后的状态(0为成功),$UID为当前用户ID,$PWD表示当前目录。定义变量如`A=123`,
152 0
|
Shell Linux
Linux环境变量之shell中export定义全局变量和echo 变量的区别
Linux环境变量之shell中export定义全局变量和echo 变量的区别
|
存储 Shell 开发者
Shell 变量详解:如何定义、使用和管理
**Shell脚本中,变量是核心元素,用于暂存数据。变量默认为字符串,赋值时等号两侧无空格。命名遵循:数字、字母、下划线,以非数字开头。常用特殊变量如 `$0` (脚本名),`$#` (参数个数)。定义变量可使用单引号(不解析变量)、双引号(解析变量)或不加引号(注意空格)。使用花括号明确变量边界,`readonly` 则可设定只读变量,`unset` 删除变量。实践这些概念以加深理解。**
580 0