shell脚本中数组array常用技巧学习实践
-
shell中数组的下标默认是从0开始的
1。将字符串放在数组中,获取其长度
#!/bin/bash
str="a b --n d"
array=($str)
length=${#array[@]}
echo $lengthfor ((i=0; i<$length; i++))
do
echo ${array[$i]}
done执行结果:
[oracle@99bill-as9 array]$ sh length.sh
4
a
b
--n
d打印字符串:
#!/bin/bash
str="a b c"
for i in $str
do
echo $i
done或者:
#!/bin/bash
str="a b c"
array=($str)
for ((i=0;i<${#array[@]};i++))
do
echo ${array[$i]}
done执行结果:
a
b
c2。字符串用其他字符分割时
#!/bin/bash
str2="a#b#c"
a=($(echo $str2 | tr '#' ' ' | tr -s ' '))
length=${#a[@]}for ((i=0; i<$length; i++))
do
echo ${a[$i]}
done
#echo ${a[2]}执行结果:
a
b
c3。数组的其他操作
#!/bin/bash
str="a b --n dd"
array=($str)
length=${#array[@]}#ouput the first array element直接输出的是数组的第一个元素
echo $array#Use subscript way access array用下标的方式访问数组元素
echo ${array[1]}#Output the array输出这个数组
echo ${array[@]}#Output in the array subscript for 3 the length of the element输出数组中下标为3的元素的长度
echo ${#array[3]}#Output in the array subscript 1 to 3 element输出数组中下标为1到3的元素
echo ${array[@]:1:3}#Output in the array subscript greater than 2 elements输出数组中下标大于2的元素
echo ${array[@]:2}#Output in the array subscript less than 2 elements输出数组中下标小于2的元素
echo ${array[@]::2}执行结果:
a
b
a b --n dd
2
b --n dd
--n dd
a b4。遍历访问一个字符串(默认是以空格分开的,当字符串是以其他分隔符分开时可以参考2)
#!/bin/bash
str="a --m"
for i in $str
do
echo $i
done执行结果:
a
--m5。如何使用echo输出一个字符串str="-n". 由于-n是echo的一个参数,所以一般的方法echo "$str"是无法输出的.
解决方法可以有:echo x$str | sed 's/^x//'
echo -ne "$str\n"
echo -e "$str\n\c"
printf "%s\n" $str(这样也可以)
shell脚本中数组array常用技巧学习实践的更多相关文章
- Linux shell脚本中 数组的声明:
数组的声明: 1)array[key]=value # array[0]=one,array[1]=two 复制代码 2)declare -a array # array被当作数组名 复制代码 3)a ...
- 数组-在Shell脚本中的基本使用介绍
Shell脚本在运维工作中是极其重要的,而数组在shell脚本里的运用无论是在循环或运算方面都是非常实用的一个环节.下面是对shell脚本中数组方面一些操作在此进行记录,希望能帮助到有兴趣的朋友~1. ...
- 学习Linux shell脚本中连接字符串的方法
这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...
- (转)轻松掌握shell编程中数组的常见用法及示例
缘起:在老男孩进行linux培训shell编程教学中,发现不少水平不错的网友及同学对数组仍然很迷糊,下面就给大家分享下数组的用法小例子,希望能给大家一点帮助.其实SHELL的数组很简单,好用.我们学习 ...
- shell脚本中常见的一些特殊符号和作用详解
这篇文章主要介绍了shell脚本中常见的一些特殊符号和它的作用详解,总结的很简洁,容易看懂,需要的朋友可以参考下 在编写Shell脚本时,我们需要会用到各种各样的特殊符号,通过这些特殊符号可以使我 ...
- shell脚本编写步骤及其常用命令和符号
1,什么是Shell Shell 是kernel的一个外壳,是一个命令解析器,负责用户与内核的交互.2,Shell脚本 Shell脚本类似于批处理,可以方便的执行大量命令.3,编写sh ...
- centos shell脚本编程2 if 判断 case判断 shell脚本中的循环 for while shell中的函数 break continue test 命令 第三十六节课
centos shell脚本编程2 if 判断 case判断 shell脚本中的循环 for while shell中的函数 break continue test 命令 ...
- shell脚本中的各种表达式介绍和使用
#前言:在shell脚本中,有各种的表达式,包括有条件测试表达式,文件表达式,字符串表达式,整数表达式,接下来我们来了解一下他们的使用方法 1.条件测试表达式 #首先来看一下条件测试语法 #条件测试语 ...
- 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器
本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...
随机推荐
- sqlserver 表值函数
一.单语句表值函数 ALTER function [dbo].[uf_get_jxc_da_sum](@dt char(8),@dt2 char(8)) RETURNS table as return ...
- Summary—【base】(CSS)
CSS知识点 1. CSS又被称为层叠样式表 2. CSS在html中的语法 a) <style> 选择器{键:值;} </style> b) css中最后一个键值可以不写分号 ...
- PHP算法面试题目
1.使用PHP描述冒泡排序和快速排序算法,对象可以是一个数组 //冒泡排序(数组排序) functionbubble_sort($array){ $count = count($array ...
- [SDOI2015][bzoj3994] 约数个数和 [莫比乌斯反演]
题面: 传送门 思路: 首先,我们需要证明一个结论:d(i*j)等于sigma(gcd(x,y)==1),其中x为i的约数,y为j的约数 对于nm的每一个质因子pi分别考虑,设n = pi^ai + ...
- 0-Broadcast机制原理简要介绍
Broadcast机制简要介绍 来源: http://blog.csdn.net/luoshengyang/article/details/6730748 导语 广播机制在Android系统中,也不算 ...
- 0-Android使用Ashmem机制进行跨进程共享内存
Android使用Ashmem机制进行跨进程共享内存 来源: http://blog.csdn.net/luoshengyang/article/details/6651971 导语: 在Androi ...
- 转载:LeetCode:5Longest Palindromic Substring 最长回文子串
本文转自:http://www.cnblogs.com/TenosDoIt/p/3675788.html 题目链接 Given a string S, find the longest palindr ...
- poj 2441 Arrange the Bulls
Arrange the Bulls Time Limit: 4000MS Memory Limit: 65536K Total Submissions: 5427 Accepted: 2069 ...
- 用c#语言通过修改注册表改IE网页首页
原文发布时间为:2009-04-19 -- 来源于本人的百度文章 [由搬家工具导入] string key = @"HKEY_CURRENT_USER\Software\Microsoft\ ...
- javascript 表格隔行换色
用到的知识点: 获取表格元素 tbody 和 rows都是有索引的 这里我们只有一组tbody所以 索引是0 偶数行 索引取余2为0 奇数行 索引取余2不为0 通过 遍历行索引设置相应的颜色. < ...