shell编程学习笔记--整数自增
在Shell脚本中,用于while或for循环中经常要涉及到整数自增的情况,下面罗列下可能的方式
【方式一】declare -i来声明整数变量
- root@localhost:~# declare -i x=1
- root@localhost:~# x+=1
- root@localhost:~# echo $x
- 2
【方式二】使用let命令
- root@localhost:~# i=1
- root@localhost:~# let i+=1
- root@localhost:~# echo $i
- 2
- root@localhost:~# i=1
- root@localhost:~# let i=$i+1
- root@localhost:~# echo $i
- 2
- root@localhost:~# i=1
- root@localhost:~# let i++
- root@localhost:~# echo $i
- 2
- root@localhost:~# i=1
- root@localhost:~# let ++i
- root@localhost:~# echo $i
- 2
【方式三】使用(())
- root@localhost:~# i=1
- root@localhost:~# ((++i))
- root@localhost:~# echo $i
- 2
- root@localhost:~# i=1
- root@localhost:~# ((i++))
- root@localhost:~# echo $i
- 2
【方式四】使用expr命令
- root@localhost:~# i=1
- root@localhost:~# i=`expr $i + 1`
- root@localhost:~# echo $i
- 2
- root@localhost:~# i=1
- root@localhost:~# i=$(expr $i + 1)
- root@localhost:~# echo $i
- 2
【方式五】使用$(())
- root@localhost:~# i=1
- root@localhost:~# i=$(($i + 1))
- root@localhost:~# echo $i
- 2
【方式六】使用$[]
- root@localhost:~# i=1
- root@localhost:~# i=$[$i + 1]
- root@localhost:~# echo $i
- 2
备注:
1)使用i=$(expr $i + 1)比i=`expr $i + 1`要好些
2)使用(())或者$(())速度要比expr快
3)如果不考虑速度问题,涉及到不同平台的兼容,最好使用expr
4)Bash(sh)上使用比较多的情形:let,expr,(())
本文为网络搜集,如有侵权,请告知!!!
shell编程学习笔记--整数自增的更多相关文章
- Linux Shell编程学习笔记——目录(附笔记资源下载)
LinuxShell编程学习笔记目录附笔记资源下载 目录(?)[-] 写在前面 第一部分 Shell基础编程 第二部分 Linux Shell高级编程技巧 资源下载 写在前面 最近花了些时间学习She ...
- shell编程学习笔记【原创】
本文为本人学习笔记,如有转载请注明出处,谢谢 一.Bourne Shell 有如下四种变量: 用户自定义变量 位置变量,即命令行参数 预定义变量 环境变量 二.位置变量 $ 与键入的命令行一样,包含脚 ...
- shell编程学习笔记(一):编写我的第一段代码
目前在学习Shell编程,我会把我的学习笔记记录在这里.大神可以直接略过~ 嗯,第一段代码,肯定是要输出Hello World了~ 以下蓝色字体的内容为linux命令,红色字体的内容为输出的内容: # ...
- shell编程学习笔记(十):Shell中的for循环
shell编程中可以实现for循环遍历 先来写一个最简单的吧,循环输出从1到10,脚本内容为: #! /bin/sh for i in {1..10} do echo $i done 上面的代码从1到 ...
- shell编程学习笔记之sed编辑器
在shell编程中,大多数处理的都是文本文件.对文本文件进行处理除了使用交互式文本编辑器(vi[m],gedit......)也可以使用另外一类:流编辑器. 流编辑器:使用预定义的编辑规则来对文本进行 ...
- shell编程学习笔记(八):Shell中的if条件判断
编程语言中都有条件判断,shell编程也不例外,下面我们来看一下shell中应该怎么使用if条件判断 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts ...
- shell编程学习笔记(六):cat命令的使用
这一篇不是讲shell编程的,专门讲cat命令.shell编程书用到了这个cat命令,顺便说一下cat命令. cat命令有多种用法,我一一来列举(以下蓝色字体部分为Linux命令,红色字体的内容为输出 ...
- shell编程学习笔记(五):Shell中脚本的参数
在执行Shell脚本的时候,可以在执行时带上参数,相当于传递参数给脚本,下面我们看一下怎么使用这个参数 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/script ...
- shell编程学习笔记之特殊变量($0、$1、$2、 $?、 $# 、$@、 $*)
特殊变量($0.$1.$2. $?. $# .$@. $*) shell编程中有一些特殊的变量可以使用.这些变量在脚本中可以作为全局变量来使用. 名称 说明 $0 脚本名称 $1-9 脚本执行时的参数 ...
随机推荐
- SQL查询和编程基础
本文转自http://www.cnblogs.com/Jolinson/p/3552786.html 这里的摘抄来自<Microsoft SQL Server 2008技术内幕:T-SQL语言基 ...
- resin配置
第一种方式: 在本机调试Resin服务,一般是在Eclipse IDE中进行,这样即可以快速的在开发环境中启动/终止Resin,又可以很方便的Debug程序.跟踪异常栈. 在任何版本的 ...
- 170120、java 如何在pdf中生成表格
1.目标 在pdf中生成一个可变表头的表格,并向其中填充数据.通过泛型动态的生成表头,通过反射动态获取实体类(我这里是User)的get方法动态获得数据,从而达到动态生成表格. 每天生成一个文件夹存储 ...
- java中的printf
转载自: http://www.cnblogs.com/healthy-tree/archive/2012/08/07/2626665.html http://www.cnblogs.com/Tank ...
- 隐藏显示终端的光标(shell echo,linux c printf)
https://www.cnblogs.com/niocai/archive/2011/11/11/2245727.html 一.使用shell 的 echo 命令实现. echo -ne <c ...
- 创建自己的java类库并加以调用方法
第一次搞博客,心里有点发慌,记录一下:2018/2/1/ 21:33 今天Think In Java第4版 中文版(英文看着可能很耗时),看到了6.1.3 定制工具库这一章节,之前作者调用自己的类 ...
- Java 之包
作用: 对类文件进行分类管理, 类似于文件夹 给类提供多层命名(名称)空间 写在程序的第一行, 包名使用小写 类名的全称是: 包名.类名 包也是一种封装形式 // 示例 package mypack; ...
- Python--(并发编程之线程Part2)
GIL只能保证垃圾回收机制的安全,进程中的数据安全还是需要自定义锁 线程执行代码首先要抢到GIL全局锁,假设线程X首先抢到,以为要抢到自定义锁要执行代码,所以这个线程在执行代码的时候就很容抢到了自定义 ...
- 008-CentOS添加环境变量
在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行“php -v”命令查看当前php版本信息时时, ...
- xcode中全文查询某个中文字
查询所有中文 [^"]*[\u4E00-\u9FA5]+[^"\n]*? 查询某个中文字“中”字 [^"]*[\u4e2d]+[^"\n]*? 中文字转成uni ...