shell变量、字符串
时间: 2025-05-15 10:06:34 浏览: 38
### Shell 脚本中的变量与字符串
#### 变量的定义
在 Shell 中,变量无需声明其类型即可直接赋值。通过简单的 `name=value` 形式可以完成变量的定义[^1]。需要注意的是,在等号两侧不允许存在任何空格。
```bash
variable="This is a string"
```
#### 获取变量的值
要访问已定义的变量,需在其名称前加上 `$` 符号。如果变量名紧随其他字符,则需要用大括号 `{}` 将变量名包裹起来以区分边界。
```bash
echo $variable
echo ${variable}world
```
#### 字符串的操作
Shell 支持多种方式处理字符串。可以通过双引号或单引号来定义字符串。其中,双引号允许解析变量和转义字符,而单引号则完全保留原始内容[^2]。
##### 定义字符串
- 使用双引号:
```bash
str="Hello, world!"
```
- 使用单引号:
```bash
str='Hello, world!'
```
##### 字符串连接
可以直接将多个字符串或者变量连在一起实现拼接效果。
```bash
greeting="Hello"
name="World"
message="$greeting $name"
echo $message
```
##### 子字符串提取
利用 `${var:start:length}` 的形式可以从指定位置截取子字符串。
```bash
substring=${message:0:5}
echo $substring
```
##### 判断字符串长度
`${#string}` 表达式用于返回给定字符串的实际长度。
```bash
len=${#message}
echo "Length of message is $len"
```
#### 数组的定义与操作
Shell 还支持数组类型的变量。数组元素之间用空格分隔并置于圆括号内进行初始化。
##### 创建数组
```bash
array=("element1" "element2" "element3")
```
##### 访问数组元素
单独获取某个索引处的内容或是遍历整个数组均十分简便。
```bash
first_element=${array[0]}
for item in "${array[@]}"; do echo "$item"; done
```
##### 修改/追加数组项
向现有数组增加新成员也很容易做到。
```bash
array+=("newElement")
```
##### 删除数组元素
使用 `unset` 命令可移除特定下标的项目。
```bash
unset array[1]
```
阅读全文
相关推荐


















