十、Shell 变量类型

Shell 支持不同类型的变量,其中一些主要的类型如下:

一、整数变量

整型变量用于存储整数据数据。可以使用整数赋值给变量,或者通过命令的输出结果获取整数值。整型变量可以用于数学计算、循环控制等等。

#!/bin/bash  
num1=10  
num2=5  

sum=$((num1 + num2))  

echo "和为: $sum"

运行结果 和为: 15

二、字符变量

字符串变量用于存储文本数据。使用字符串变量来保存文本、文件名、命令的输出等。在Shell脚本中,使用双引号或单引号来定义字符串变量。

#!/bin/bash  
str1="Hello, World!"  
echo $str1

运行结果 Hello, World!

三、数组变量

数组变量用于存储多个值的数据结构。数组可以存储字符串或整数等不同类型的值,并可以通过索引访问特定的元素。在Shell脚本中,使用括号定义数组变量,以及索引访问数组中的元素。

#!/bin/bash  
arr1=("apple" "banana" "orange")  
echo ${arr1[0]}  # 输出 "apple"  
echo ${arr1[1]}  # 输出 "banana"  
echo ${arr1[2]}  # 输出 "orange"
apple
banana
orange

四、环境变量

环境变量是用来存储系统环境信息的变量。这些变量可以影响脚本的运行方式,并且可以在脚本之间共享和传递。环境变量通常用于配置脚本的行为、设置路径、设置系统参数等,需要使用 $ 符号来访问环境变量的值,以下是一些常见的环境变量:

  • PATH:用于存储可执行文件的搜索路径。
  • HOME:当前用户的家目录。
  • USER:当前登录的用户名。
  • SHELL:当前使用的Shell解释器。
  • PWD:当前工作目录。
#!/bin/bash  
echo "当前用户:$USER"  
echo "当前工作目录:$PWD"
当前用户:root
当前工作目录:/root

五、特殊变量

在Shell脚本中,有一些特殊的环境变量,它们具有特定的用途和意义。以下是一些常见的特殊环境变量:

  • $0:当前脚本的名称。
  • $1、$2、$3...:位置参数,表示传递给脚本的参数。
  • $#:传递给脚本的位置参数的数量。
  • $*:所有位置参数的列表。
  • $@:所有位置参数的列表,与$*类似,但每个参数都是作为一个独立的字符串传递的。
  • $?:上一个命令的退出状态。0表示成功,非0表示失败。