- 浏览: 50353 次
- 性别:
文章分类
- 全部博客 (103)
- 一致性哈希算法 (1)
- 云计算 (2)
- Cassandra学习 (2)
- Java网络通信与笔记 (14)
- ZooKeeper学习 (1)
- HBase学习 (1)
- Sqoop学习 (1)
- Java网页开发之 (2)
- Java网络通信框架 (5)
- (memcached)分布式内存对象缓存系统 (1)
- Redis学习 (5)
- Shell学习 (14)
- Linux学习 (10)
- MySQL优化 (17)
- C++ (7)
- HTML5 (5)
- Android学习 (5)
- 网络 (2)
- Node.js (1)
- D3.js (1)
- R语言学习 (3)
- Spark (1)
- CAN协议 (2)
- 解决方案 (0)
最新评论
Shell在编程方面比Windows批处理强大很多,无论是在循环、运算。
bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。
定义数组
在Shell中,用括号来表示数组,数组元素用“空格”符号分割开。定义数组的一般形式为:
例如:
或者
还可以单独定义数组的各个分量:
读取数组
读取数组元素值的一般格式是:
${array_name[index]}
例如:
举个例子:
运行脚本,输出:
使用@ 或 * 可以获取数组中的所有元素,例如:
举个例子:
运行脚本,输出:
获取数组的长度
获取数组长度的方法与获取字符串长度的方法相同,例如:
复制纯文本新窗口
# 取得数组元素的个数
# 或者
# 取得数组单个元素的长度
bash支持一维数组(不支持多维数组),并且没有限定数组的大小。类似与C语言,数组元素的下标由0开始编号。获取数组中的元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。
定义数组
在Shell中,用括号来表示数组,数组元素用“空格”符号分割开。定义数组的一般形式为:
array_name=(value1 ... valuen)
例如:
array_name=(value0 value1 value2 value3)
或者
array_name=( value0 value1 value2 value3 )
还可以单独定义数组的各个分量:
array_name[0]=value0 array_name[1]=value1 array_name[2]=value2可以不使用连续的下标,而且下标的范围没有限制。
读取数组
读取数组元素值的一般格式是:
${array_name[index]}
例如:
valuen=${array_name[2]}
举个例子:
#!/bin/sh NAME[0]="Zara" NAME[1]="Qadir" NAME[2]="Mahnaz" NAME[3]="Ayan" NAME[4]="Daisy" echo "First Index: ${NAME[0]}" echo "Second Index: ${NAME[1]}"
运行脚本,输出:
$./test.sh First Index: Zara Second Index: Qadir
使用@ 或 * 可以获取数组中的所有元素,例如:
${array_name[*]} ${array_name[@]}
举个例子:
#!/bin/sh NAME[0]="Zara" NAME[1]="Qadir" NAME[2]="Mahnaz" NAME[3]="Ayan" NAME[4]="Daisy" echo "First Method: ${NAME[*]}" echo "Second Method: ${NAME[@]}"
运行脚本,输出:
$./test.sh First Method: Zara Qadir Mahnaz Ayan Daisy Second Method: Zara Qadir Mahnaz Ayan Daisy
获取数组的长度
获取数组长度的方法与获取字符串长度的方法相同,例如:
复制纯文本新窗口
# 取得数组元素的个数
length=${#array_name[@]}
# 或者
length=${#array_name[*]}
# 取得数组单个元素的长度
lengthn=${#array_name[n]}
发表评论
-
Shell文件包含
2015-09-05 14:20 0像其他语言一样,Shell 也可以包含外部脚本,将外部脚本的内 ... -
Shell输入输出重定向:Shell Here Document,/dev/null文件
2015-09-05 14:16 0Unix 命令默认从标准输 ... -
Shell函数参数
2015-09-05 14:10 0在Shell中,调用函数时可以向其传递参数。在函数体内部,通过 ... -
Shell函数:Shell函数返回值、删除函数、在终端调用函数
2015-09-05 14:07 0函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰 ... -
Shell break和continue命令
2015-09-05 14:05 0在循环过程中,有时候需要在未达到循环结束条件时强制跳出循环,像 ... -
Shell until循环
2015-09-05 14:03 0until 循环执行一系列命令直至条件为 true 时停止。u ... -
Shell while循环
2015-09-05 14:00 0while循环用于不断执行一系列命令,也用于从输入文件中读取数 ... -
Shell for循环
2015-09-08 22:58 467与其他编程语言类似,Shell支持for循环。 for循环一 ... -
Shell case esac语句
2015-09-05 13:57 0case ... esac 与其他语言中的 switch .. ... -
Shell if else语句
2015-09-05 13:54 0if 语句通过关系运算符判断表达式的真假来决定执行哪个分支。S ... -
shell printf命令:格式化输出语句
2015-09-13 16:01 546printf 命令用于格式化输出, 是echo命令的增强版。它 ... -
Shell echo命令
2015-09-13 16:00 1023echo是Shell的一个内部指令,用于在屏幕上打印出指定的字 ... -
Shell字符串
2015-09-11 22:00 301字符串是shell编程中最常用最有用的数据类型(除了数字和字符 ... -
Shell注释
2015-09-11 22:00 373以“#”开头的行就是注释,会被解释器忽略。 sh里没有多行注 ... -
Shell运算符:Shell算数运算符、关系运算符、布尔运算符、字符串运算符等
2015-09-06 20:19 455Bash 支持很多运算符, ... -
Shell替换:Shell变量替换,命令替换,转义字符
2015-09-06 20:18 850如果表达式中包含特殊 ... -
Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数
2015-09-06 20:18 365前面已经讲到,变量名只能包含数字、字母和下划线,因为某些包含其 ... -
Shell变量:Shell变量的定义、删除变量、只读变量、变量类型
2015-09-05 13:09 607Shell支持自定义变量。 定义变量 定义变量时,变量名不加 ... -
第一个Shell脚本
2015-09-05 13:02 301打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell ... -
Shell脚本语言与编译型语言的差异
2015-09-05 12:58 445大体上,可以将程序设 ...
相关推荐
**获取数组长度** 在Shell中,我们可以使用`${#arrayName[@]}`或`${#arrayName[*]}`来获取数组的长度。这两个表达式都是有效的,但它们在某些场景下会有不同的行为。在上述示例中, `${#arrayWen[@]}` 用于获取`...
Shell 数组与关联数组 1.数组 1.1. 数组定义 一对圆括号表示数组,数组元素...长度:用${#数组名[@或*]} 可以得到数组长度 xiaosi@Qunar:~$ echo ${#a[@]} 3 xiaosi@Qunar:~$ echo ${#a[*]} 3 获取元素:用${数组名
本篇文章将深入探讨Linux Shell数组的创建、读取、赋值以及一些特殊的使用技巧。 1. **数组定义**: 在Shell中,数组的定义非常直观。例如,创建一个包含1到5的数组可以这样写: ``` a=(1 2 3 4 5) ``` 这里的...
数组定义 [chengmo@centos5 ~]$ a=(1 2 3 4 5) [chengmo@centos5 ~]$ echo $a 1 一对括号表示是数组,数组元素用“空格”符号分割开。 2.数组读取与赋值 得到长度: [chengmo@centos5 ~]$ echo...
1. **数组定义**: 在Shell中,数组的定义简单直观。例如,我们可以这样创建一个包含1到5的数组: ``` a=(1 2 3 4 5) ``` 这里,一对括号定义了一个数组`a`,数组元素之间由空格分隔。 2. **数组读取与赋值**...
echo "数组的长度:"${#arr[*]} ``` 输出: ``` 所有的内容如下: a b c 数组的长度: 3 ``` 接下来,我们来介绍如何使用`for`循环遍历数组中的每个元素。以下是一个简单的例子: ```bash for var in ${arr[@]} ...
本文将详细介绍如何在Linux Shell中定义数组以及如何使用`for`循环遍历数组。 ### 数组的定义 在Linux Shell中,定义数组的语法如下: ```bash variable=(元素1 元素2 元素3 ...) ``` 元素之间使用空格分隔。...
shell数组介绍: 代码如下: //数组变量定义: $ arr=(1 3 6 8 2 5 9 0 7 4) // 默认获取第一个元素 $ echo $arr // 通过下标访问,下面取的数组第二个元素,shell数组下标是从0开始 $ echo ${arr[1]} // 访问整个...
### 获取数组长度 获取数组元素个数的方法是: ```bash length=${#array_name[@]} # 或者 length=${#array_name[*]} ``` 若要获取单个元素的长度,可以使用`${#array_name[n]}`。 ### 数组操作 #### 替换 替换...
数组定义 [chengmo@centos5 ~]$ a=(1 2 3 4 5) [chengmo@centos5 ~]$ echo $a 1 一对括号表示是数组,数组元素用“空格”符号分割开。 2.数组读取与赋值 得到长度: [chengmo@centos5 ~]$ echo...
这样,`aNumList`就是一个包含100个元素的数组,你可以通过`echo ${#aNumList[@]}`来查看数组的长度。 ### 二、通过内部`{begin..end}`生成序列 另一种生成序列的方法是使用Shell的内部运算符`{begin..end}`。例如...
Shell数组:shell数组的定义、数组长度 **数组定义**: - `array_name=(element1 element2 ...)` - 访问元素:`echo "${array_name[0]}"` **数组长度**: - 使用`${#array_name[@]}`获取数组长度。 #### 13. ...
5. 函数与数组:Shell脚本可以定义函数,用于执行特定的任务。数组在Shell脚本中也可以使用,但数组的索引从0开始。 6. 正则表达式:Shell支持正则表达式,这使得在文本处理中进行模式匹配变得非常方便。 7. 文本...
缺点:数组的长度是固定的,不适合存储大小不固定的动态数据,另外数组在内存中是连续分配的,当数组较大时可能会导致内存碎片化。 链表: 优点:可以方便地插入和删除元素,适用于需要频繁插入和删除数据的场合。 ...
4. 计算数组长度:`len=${#array[@]}`。 四、Shell传递参数 1. 在脚本中,可以使用`echo $0 $1 $2`来输出传入的参数,其中`$0`是脚本本身的名称,`$1`, `$2`等是传递的参数。 2. 通过`echo $#`获取参数总数,`echo ...