shell脚本中shift的用法
用法解释:
shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数然后进行相应处理(常见于Linux中各种程序的启动脚本)。
示例1:依次读取输入的参数并打印参数个数:
从上可知 shift(shift 1) 命令每执行一次,变量的个数($#)减一(之前的$1变量被销毁,之后的$2就变成了$1),而变量值提前一位。
同理,shift n后,前n位参数都会被销毁,例如示例2
示例2
运行结果:
示例3:
命令行参数处理
./imx6mksdboot.sh -device /dev/sdd -flash emmc -ddrsize 512
#命令行处理,根据选项获得参数
while [ $# -gt 0 ]; docase $1 in--help | -h)usage $0;;-device) shift; device=$1; shift; ;; -flash) shift; flash=$1; shift; ;;-ddrsize) shift; ddrsize=$1; shift; ;;--version) version $0;;*) copy="$copy $1"; shift; ;;esac
done
当命令中有 -device时,会使用shift将参数左移,也就是去掉此前的$1,也就是命令中-device,此时的$1就成为了后面的 /dev/sdd,这样就让device变量等于/dev/sdd,一次类推
usage $0是函数调用,将$0也就是脚本的名字掺入usage 函数中,在函数中需要用$1来获取
shell脚本中shift的用法相关推荐
- shell shift与{}_一文掌握shell脚本中shift的用法及功能
概述 今天主要介绍下shell脚本中shift的一些用法,这个命令还是相对比较少见的. 一.shift介绍 shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数 ...
- Linux中shift命令的用法,一文掌握shell脚本中shift的用法及功能
概述 今天主要介绍下shell脚本中shift的一些用法,这个命令还是相对比较少见的. 一.shift介绍 shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数 ...
- Linux shell脚本中shift的用法说明
原文:https://blog.csdn.net/zhu_xun/article/details/24796235 shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历 ...
- Shell编程中Shift的用法
位置参数可以用shift命令左移.比如shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1.$2.$3丢弃,$0不移动.不带参数的shift命令相当于shift 1. 非常 ...
- Shell编程中Shift的用法(转)
位置参数可以用shift命令左移.比如shift 3表示原来的$4现在变成$1,原来的$5现在变成$2等等,原来的$1.$2.$3丢弃,$0不移动.不带参数的shift命令相当于shift 1. 非常 ...
- Shell脚本中date的用法小结
2019独角兽企业重金招聘Python工程师标准>>> 操作系统中时间管理是很重要的,也是很复杂的,首先要处理每个月不同的天数,每4年有一闰年,每400年少一闰,这样才能处理星期几的 ...
- linux shell tr命令,shell脚本中的tr用法
tr 用来从标准输入中通过替换或删除操作进行字符转换. tr 主要用于删除文件中控制字符或进行字符转换. 使用tr时要转换两个字符串:字符串1用于查询,字符串2用于处理各种转换. tr刚执行时,字符串 ...
- linux shell脚本字符串连接符,学习Linux shell脚本中连接字符串的方法
这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...
- 7月11日任务 shell介绍、shell结构和执行 、date命令用法、shell脚本中的变量
2019独角兽企业重金招聘Python工程师标准>>> 20.1 Shell脚本介绍 • shell是一种脚本语言 aming_linux blog.lishiming.net ...
- 69:shell脚本介绍 | shell脚本结构 | 执行data命令用法 | shell脚本中变量
2019独角兽企业重金招聘Python工程师标准>>> 1.shell脚本介绍: shell是一种脚本语言和传统的开发语言相比,会比较简单: shell有自己语法,可以支持逻辑判断. ...
最新文章
- NODEJS项目实践0.4 [domain,pm2,log4js,md5]
- linux samba默认端口,Linux 指定端口挂载samba 亲测可用!
- 互联网日报 | 2021年春运火车票今起开抢;好未来达成33亿美元私人配售协议;盒马mini开进菜场...
- 大数据如何影响百姓生活
- IOS机型margin属性无效问题
- 强化学习的数学基础4---Q-Learning进阶
- 数学之美札记:自然语言处理——从规则到统计
- php libswf,PHP停解析swf文件头
- Prometheus监控(二)
- 3月7日 当前动力电池竞争格局
- 智慧职教mooc学院计算机文化基础答案,智慧职教MOOC学院-刷课分析
- 天翼对讲机写频软件_手台对讲机应该怎么选?
- endnote layout can not be formatted because it is no longer open
- ORACLE函数返回数据或字符串
- idea怎么运行c语言程序,IntelliJ IDEA 10.0 64位运行方法
- [Openstack]一键安装Openstack测试环境
- Five I/O Models
- 【vs】vs编译爆出大量莫名其妙错误的解决方法
- Python |浅谈爬虫的由来
- Flink 算子状态与键控状态总结
热门文章
- 知识笔记 - 平头哥ratel安卓Hook框架的安装与简单使用
- android 离散分布控件,Android自定义睡眠质量分布控件
- python实现图片找不同游戏_用Python实现QQ游戏大家来找茬辅助工具
- B-JUI表单验证规则总结
- 快速学习四步法:如何用20小时,快速学习
- 电脑技巧:加装SSD固态硬盘注意事项,电脑速度超流畅
- LOTO 示波器 两种电流探头的对比实测
- 软件工程师欲发动DDoS攻击白宫网站 抗议特朗普就任总统
- :last-of-type , :last-child 无效的问题
- freemarker word模板导出图片循环