shell 操作字符串 变量 数组
- #!/bin/bash
- name="jack"
- #使用双引号拼接
- #greeting="hello,"$name"!"
- #greeting_1="hello,${name} !"#输出实参
- #echo $greeting $greeting_1
- #使用单引号拼接
- #greeting_2='hello,'$name'!'
- #greeting_3='hello,${name}'#原样输出
- #echo $greeting_2 $greeting_3
- #获取字符串长度
- #string="abcd"
- #echo ${#string} #输出4
- #提取字符串
- #string="runoob is a great site"
- #echo ${string::} #输出unoo 下标从0开始
- #查找字符串
- #string="runoob is a great site"
- #echo `expr index "$string" io` #输出4 下标从1开始
- #定义数组 下标从0开始,元素之间使用“空格”分隔
- #定义数组一般形式
- array_name=("立白" "太渍" "奇强" "滴露")
- # 还可以这样定义数组
- array_name1=(
- "赵子龙"
- 诸葛亮
- "曹操")
- #单独定义数组的各个元素
- array_name[]="温太医"
- #读取数组
- #输出整个数组
- #echo ${array_name[@]}
- #或
- #echo ${array_name1[*]}
- #echo ${array_name1} #不加[@]或[*]默认返回第1个值 赵子龙
- #echo ${array_name[]} #下标越界会啥也不输出 echo回显一个空行
- #echo ${array_name1[]} #曹操
- #获取数组的长度
- # 获取整个数组元素的个数
- #length=${#array_name[*]}
- #length1=${#array_name[@]}
- #echo ${length} ${length1} #输出4
- #取得数组单个元素的长度
- #length=${#array_name1[]} #"赵子龙"
- #length1=${#array_name1[]} #诸葛亮
- #echo ${length} ${length1} #输出3
- #shell多行注释
- #可以把一段要注释的代码用一对花括号括起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样的效果.我试了怎么没有效果呢??? 还是可以输出的
- {
- echo ""
- echo "abc"
- echo "洛神"
- }
- #还可以使用:<<这种格式 如:
- :<<EOF
- echo ""
- echo "abc"
- echo "洛神"
- EOF
- #EOF也可以使用其它符号
- :<<!
- echo ""
- echo "abc"
- echo "洛神"
- !
shell 操作字符串 变量 数组的更多相关文章
- C Shell中的变量数组
今天刚刚在看一点C Shell的内容,发现一个挺好玩的东西!就是环境变量可以像数组那样来设置!具体设置语法如下: set variable=(element1 element2 ...) //注意元素 ...
- shell切分字符串到数组
shell切分字符串到数组 问题: 对于’aa,bb,cc,dd,ee’这样的字符串输出采用,分隔开的aa bb cc dd ee aa:bb is ok:/home/work按照":&qu ...
- shell操作字符串案例
#!/bin/bash name="Shell" url="http://cxy.com/" str1=$name$url #中间不能有空格 str2=&quo ...
- Shell 中字符串变量的赋值注意点
1. 变量赋值 语法:var="saaaa" PS: 等号两边不能有空格 2. 脚本示例如下: #!/bin/sh # Get bug activity info # usage ...
- [Shell] 分隔字符串为数组
#!/bin/bash tmp="test,girl,boy,love" OLD_IFS="$IFS" IFS="," arr=($a) I ...
- unix下对于字符串变量的各种操作总结
在unix like系统的shell中,提供了很多操作字符串变量的灵活语法,我们接下来依次来看一看. apple@kissAir: ~$path=$PATH apple@kissAir: ~$echo ...
- 03- Shell脚本学习--字符串和数组
字符串 字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似: 单双引号的区别: 双 ...
- Linux(六)shell操作实用技巧
一.shell操作日期时间 linux 系统为我们提供了一个命令 date,专门用来显示或者设置系统日期时间的. 语法格式为: date [OPTION]... [+FORMAT] ...
- shell总结:读取文件、参数、if、分割字符串、数组长度、空文件、变量赋值、多进程、按行切割文件、查看线程
Reference: http://saiyaren.iteye.com/blog/1943207 1. Shell 读取文件和写文件 for line in $(<top30000. ...
随机推荐
- spark性能调优03-shuffle调优
1.开启map端输出文件的合并机制 1.1 为什么要开启map端输出文件的合并机制 默认情况下,map端的每个task会为reduce端的每个task生成一个输出文件,reduce段的每个task拉取 ...
- Scrapy 教程(七)-架构与中间件
Scrapy 使用 Twisted 这个异步框架来处理网络通信,架构清晰,并且包含了各种中间件接口,可以灵活的完成各种需求. Scrapy 架构 其实之前的教程都有涉及,这里再做个系统介绍 Engin ...
- 方法签名_spring aop_around
//注解签名 方法签名 Signature signature = pjp.getSignature(); MethodSignature methodSignature= (MethodSignat ...
- Linux Qt cannot find -lGL错误完美解决方案(亲测有效)
http://c.biancheng.net/view/3901.html 对于很多 Linux 发行版本,Qt 安装完成后如果直接编译或者运行项目,会出现“cannot find -lGL”错误,如 ...
- 将Docker主机数据挂在到容器中
dcoker 提供三种不同的方式将数据从宿主机挂载到容器中:volumes,bind mounts, tmpfs.volumes: Docker管理宿主机文件系统的一部分(/var/lib/docke ...
- 仿scikit-learn模式写的kNN算法
一.什么是kNN算法 k邻近是指每个样本都可以用它最接近的k个邻居来代表. 核心思想:如果一个样本在特征空间中的k个最相邻的样本中大多数属于一个某类别,则该样本也属于这个类别. 二.将kNN封装成kN ...
- 1Mbps代表每秒传输1,000,000位(bit
1Mbps代表每秒传输1,000,000位(bit
- node项目实战-用node-koa2-mysql-bootstrap搭建一个前端论坛
前言 在学习了koa2和express并写了一些demo后,打算自己写一个项目练练手,由于是在校生,没什么好的项目做,即以开发一个前端论坛为目标,功能需求参照一下一些社区拟定,主要有: 登录注册 个人 ...
- git概述(三)
Bug分支: 当你接到一个修复一个代号101的bug的任务时,很自然地,你想创建一个分支issue-101来修复它,但是,等等,当前正在dev上进行的工作还没有提交: 并不是你不想提交,而是工作只进行 ...
- puppet使用rsync模块
puppet使用rsync模块同步目录和文件 环境说明: OS : CentOS5.4 i686puppet版本: ...