位置: 编程技术 - 正文

shift妙用之解决shell编程中的入参问题

编辑:rootadmin
我说过了,shell是我的常规武器,目前虽然还不纯熟,但是我爱shell这门语言,在Linux下面混,总要写脚本。程序员是有基因,对编程语言是有偏好的,你让我写C代码,我会觉得很爽,会有困难,会有痛苦的摸索和学习,但是,我愿意;学习shell/python,我也很乐意,甚至Lisp这种冷门的语言我也充满了好奇,虽然现在Go和Erlang我一点也不懂,但是我按耐不住对这两种语言的兴趣,只要我抽出手来,一定会和他们缠绵一番。有爱就会有恨,我痛苦地意识到到自己是个很情绪化的程序员,哪怕我一遍遍地骂自己bitch is bitchy,一遍遍的告诉自己要端正态度,学习CSS/HTML/仍然让我痛苦的死去活来,可以预计的是,让我学习Java我也会很痛苦(我也清楚地明白,痛苦之烈一定不如学习CSS/HTML的痛苦)。我知道我在跑题,我贱人就是矫情,但是我压抑的太难受了,不找个地方发泄一下,我会把自己憋坏。 shell编程经常会遇到参数个数不定的这种情况,这种情况怎么处理呢?shift就要闪亮登场了。 $#是入参的个数, $@是当前所有的入参 $0是脚本的名字 $1是第一个入参,$2是第二个入参。。。。 Bash定义了$1到$9,一共9个位置变量,这就决定了我们不能无限制的用$之类的来获取更多的入参。 这时候就需要用shift了,shift会将入参右移,如下图所示: 我们看一段shell代码,加深理解: 看下输出: 现在,如果入?⒌母鍪?欢ǎ?颐侨绾未?砣氩文兀 上面这个伪码片段表明如何处理不定的入参,通过store_input,我们将每一个入参保存下来,然后,我们就可以处理了。 最后的最后,给出一个处理不定参数的例子: 输出如下: 参考文章:

推荐整理分享shift妙用之解决shell编程中的入参问题,希望有所帮助,仅作参考,欢迎阅读内容。

shift妙用之解决shell编程中的入参问题

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

linux批量备份服务器配置文件和目录的脚本 功能:1.只在备份机执行,远程的服务器只需要允许备份机用root通过密钥登录;2.在备份机上配置需要备份哪些服务器,在NEED_BACKUP_SERVERS这个数组增减

Bash的For循环(根据每次递增的数) 用BashShell的for循环,每次递增数是就行了。#!/bin/bash##每次递增的数ADD_NUM=#递增1的话取消下行注释,并相应的注释另一句for的开头的#for((i=1;i=;i++

消耗CPU资源的shell脚本 #!/bin/sh#filenamekillcpu.shif[$#!=1];thenecho"USAGE:$0CPUs"exit1;fiforiin`seq$1`doecho-ne"i=0;whiletruedoi=i+1;done"|/bin/sh&pid_array[$i]=$!;doneforiin"${pid_array[@]}";doecho'kill'$i';';done使用

标签: shift妙用之解决shell编程中的入参问题

本文链接地址:https://www.jiuchutong.com/biancheng/376753.html 转载请保留说明!

上一篇:Bash Shell中Shift用法分享(bash shell control z)

下一篇:linux批量备份服务器配置文件和目录的脚本(linux怎么全盘备份)

  • PHP简单实现合并2个数字键数组值的方法(php合并两个二维数组)

    PHP简单实现合并2个数字键数组值的方法(php合并两个二维数组)

  • 教你如何看懂SQL Server查询计划(教你如何看懂标签)

    可以从图片上看到,执行查询后,得到二个表格,上面的表格显示了查询的结果,下面的表格显示了查询的执行过程。相比本文的第一张图片,这张图片可能在直观上不太友好,但是,它能反映更多的信息,而且尤其在比较复杂的查询时,可能看起来更容易,因为对于复杂的查询,【执行计划】的步骤太多,图形方式会造成图形过大,不容易观察。而且这张执行过程表格能反映2个很有价值的数据(前二列)。

    还是来看看这个【执行过程表格】吧。我来挑几个重要的说一下。【Rows】:表示在一个执行步骤中,所产生的记录条数。(真实数据,非预期)【Executes】:表示某个执行步骤被执行的次数。(真实数据,非预期)【Stmt Text】:表示要执行的步骤的描述。【EstimateRows】:表示要预期返回多少行数据。

    在这个【执行过程表格】中,对于优化查询来说,我认为前三列是比较重要的。对于前二列,我上面也解释了,意思也很清楚。前二列的数字也大致反映了那些步骤所花的成本,对于比较慢的查询中,应该留意它们。【Stmt Text】会告诉你每个步骤做了什么事情。对于这种表格,它所要表达的其实是一种树型信息(一行就表示在图形方式下的一个节点),所以,我建议从最内层开始去读它们。做为示例,我来解释一下这张表格它所表达的执行过程。

    第5行:【Clustered Index Seek(OBJECT:([MyNorthwind].[dbo].[Customers].[PK_Customers]), SEEK:([MyNorthwind].[dbo].[Customers].[CustomerID]=[MyNorthwind].[dbo].[Orders].[CustomerID]) ORDERED FORWARD)】,意思是说,SQL Server在对表Customers做Seek操作,而且是按照【Clustered Index Seek】的方式,对应的索引是【PK_Customers】,seek的值来源于[Orders].[CustomerID]

    第4行:【Clustered Index Scan(OBJECT:([MyNorthwind].[dbo].[Orders].[PK_Orders]), WHERE:([MyNorthwind].[dbo].[Orders].[OrderDate]>='-- ::." class="img-responsive" alt="教你如何看懂SQL Server查询计划(教你如何看懂标签)">

    教你如何看懂SQL Server查询计划(教你如何看懂标签)

  • CentOS系统下配置xtables-addons来拒绝IP访问的方法(centos安装后配置)

    CentOS系统下配置xtables-addons来拒绝IP访问的方法(centos安装后配置)

  • ubuntu12.04误删dpkg文件夹的解决方法(ubuntu卸载dpkg安装的软件)

    ubuntu12.04误删dpkg文件夹的解决方法(ubuntu卸载dpkg安装的软件)

  • OpenGL--二次几何体(opengl二维绘图函数)

    OpenGL--二次几何体(opengl二维绘图函数)

  • css和js实现弹出登录居中界面完整代码(css实现弹窗)

    css和js实现弹出登录居中界面完整代码(css实现弹窗)

  • jQuery居中元素scrollleft计算方法示例(javascript居中)

    jQuery居中元素scrollleft计算方法示例(javascript居中)

  • Material Design控件使用(三)(material design app)

    Material Design控件使用(三)(material design app)

  • 企业交的增值税怎么做账
  • 餐厅打包盒算不算商品
  • 月末只有进项税需要把转出未交增值税转到未交增值税
  • 短期借款明细账应采用三栏式账页格式
  • 机械租赁带司机税目
  • 附加税费申报没有怎么填
  • 个税手续费返还计入哪个科目
  • 公司电子承兑汇票
  • 月末应付职工薪酬计算方法
  • 降库存的方案
  • 增值税税负的概念和如何确定税负
  • 不动产有法律效力吗
  • 宿舍管理制度规定心得体会范文
  • 统一社会信用代码证
  • windows10如何开启自动更新
  • mac怎么打开hosts文件
  • 哪些进项税可以加计抵减
  • 企业所得税税前扣除凭证规定
  • win11怎么提高运行内存
  • 未开票收入怎么计算增值税
  • 工地安装监控哪个部门管
  • 社保费税前扣还是税后扣
  • 把原材料给别人加工怎么入账
  • 赠送客户的商品怎么入账
  • vue docx-preview实现docx文件在线预览
  • 编译安装php7.2
  • 编译安装和普通安装
  • 省外的发票能入账吗
  • mysql 长事务
  • golang 调用动态库
  • 快递代收费用是多少
  • linux服务器环境搭建
  • Price Comparison Script
  • mac安装mysql8.0
  • 挂预收账款怎么处理
  • 个体户开出的发票没跟对方说自己冲红了怎么办
  • 销售车位怎么找客户
  • sqlserver怎么把数据库导出来
  • 市政建设配套费 契税
  • 服务业有制造费用吗
  • 关于外币折算会计处理的表述中
  • 公司注销时应付账款怎么处理
  • 基本建设费用的组成
  • 企业收到补贴资金怎么办
  • 利润总额和未分成比例
  • 持有至到期投资改名为
  • 电脑win7win8win10操作系
  • macos sierra版本10.12.6升级
  • linux设置时间日期
  • linux远程界面
  • solaris syslog配置
  • 应用程序复制粘贴
  • 重装系统清空
  • win7升级win10黑屏
  • 如何禁止windows7自动更新
  • windows7使用
  • xp怎么改w7
  • linux怎么恢复数据
  • android入门视频教程
  • pygal python
  • div+css布局是什么
  • Python生成随机数
  • python中数字运算
  • 获取已安装应用列表的权限在哪里设置
  • 浅谈自己对教育的理解
  • 置顶朋友圈所有人能看到吗
  • python 操作微信
  • unity3d基本操作
  • java栈怎么写
  • 安全的代码
  • python xlim
  • 手机sd卡满了怎么办
  • 用python写脚本
  • python 分析
  • python消息队列感知消息被消费
  • javascript程序设计教程
  • 稽查局积案清理工作成效显著
  • 出口退税备案表享受增值税优惠政策
  • 智能财税是什么行业
  • 地方文化包括哪几种
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设