1.当一个脚本需要传入的参数较多时,可以使用for循环进行参数遍历

示例:

#!/bin/bash

number=65 #定义一个退出值

index=1 #定义一个计数器

if [ -z "$1" ];then #对用户输入的参数做判断,如果未输入参数则返回脚本的用法并退出,退出值65

echo "usage:$0 + canshu"

exit $number

fi

echo "listing args with \$*:" #在屏幕输入,在$*中遍历参数

for arg in $*

do

echo "arg: $index = $arg"

let index+=1

done

echo

index=1 #将计数器重新设置为1

echo "listing args with \"\$@\":" #在"$@"中遍历参数

for arg in "$@"

do

echo "arg: $index = $arg"

let index+=1

done

小技巧1:在"$*"和$*中遍历参数的区别

示例:

#!/bin/bash

number=11

if [ $# -eq 0 ];then

echo "usage: $0 + canshu"

exit $number

fi

for i in $* #在$*中遍历参数,此时每个参数都是独立的,会遍历$#次

do

echo $i

done

echo

for i in "$*" #在"$*"中遍历参数,此时"$*"被扩展为包含所有位置参数的单个字符串,只遍历一次

do

echo $i

done

小技巧2:在"$@"和$@中遍历参数没有区别

示例:

#!/bin/bash

number=11

if [ $# -eq 0 ];then

echo "usage: $0 + canshu"

exit $number

fi

for i in $@

do

echo $i

done

echo

for i in "$@"

do

echo $i

done

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对萬仟网的支持。如果你想了解更多相关内容请查看下面相关链接

如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!

shell脚本if参数太多_Shell脚本用for循环遍历参数的方法技巧相关推荐

  1. shell脚本中数组的使用_Shell脚本中的数组

    shell脚本中数组的使用 Knowing how to work with arrays in shell scripts will help you work with larger datase ...

  2. std输入参数太多matlab,错误使用函数,输入参数太多怎么解决

    请各位大神帮帮忙,实在想不明白问题在哪.我想用二分法求零点,待求函数为HS(t)的调用函数.代码如下 主程序是这个: %二分法迭代求解思路 %初始化 clc cla clear all close a ...

  3. shell两个时间字符串插值_Shell 脚本速成

    0x00 前言 这段时间快速把 Micropoor 的内网课程看完了一遍,里面出现了很多 Shell 脚本. Shell 脚本有什么好处? 无需安装其他软件 适合任务自动化,擅长系统管理任务 通过 S ...

  4. 用shell脚本给mysql插入数据_shell脚本向mysql表批量插入数据

    如何使用shell向mysql数据库表中插入大量测试数据. 用shell脚本通过while循环批量生成mysql测试数据的方法,根据自己的表结构来生成sql语句即可. 代码: 复制代码 代码示例: # ...

  5. shell学习之-sed用法解析_Shell脚本之sed的使用

    1.sed命令:主要作用是查找:新增 删除 和修改替换. user.txt daokr#cat user.txt ID Name Sex Age zhang M 19 wang G 20 cheng ...

  6. shell脚本给mysql创建表_shell脚本:实现MySQL创建数据库和删除数据库的脚本

    OS操作系统:CentOS release 6.8 (Final) [root@sky9896chapter11]# vi createdatabase.sh #批量创建数据库 #!/bin/sh P ...

  7. 导出远程mysql数据库中的表_shell脚本实现导出远程mysql数据库表数据至本地

    bin/main.sh脚本内容 #!/bin/bash #作用:用于同步远程mysql数据库表数据至本地 #作者:丁艺博 source /etc/profile source ~/.bash_prof ...

  8. 【Linux】Shell脚本中如何使用“循环”遍历“数组”中的元素(包括MySQL的常用指令介绍)

    一.背景 实习过程中,今天mentor突然让我拉取一下远端园区数据库中的部分信息,因为包含很多不同园区的数据信息,而且要以园区为单位生成文件来对数据进行存放,因此自然是需要使用shell脚本来自动生成 ...

  9. java命令行参数工具_Java方法中的参数太多,第8部分:工具

    java命令行参数工具 在我的系列文章的前七篇文章中,有关处理Java方法中期望的参数过多的内容集中在减少方法或构造函数期望的参数数量的替代方法上. 在本系列的第八篇文章中,我将介绍一些工具,这些工具 ...

最新文章

  1. R语言Box-Cox变换实战(Box-Cox Transformation):将非正态分布数据转换为正态分布数据、计算最佳λ、变换后构建模型
  2. 解决Mac Pro上IDEA卡顿的问题
  3. paddleocr win10 编译
  4. shp文件导入数据库
  5. Bootstrap的坑--千万别踩
  6. 我是如何把 Java 项目移植到 .NET 5.0 的
  7. 327 区间和的个数
  8. Win7搭建http文件共享
  9. 第 5 章 主从复制
  10. 浙大python判断两个字符串是否为变位词_算法2----------变位词
  11. 最长公共子序列长度以及打印(动态规划入门)
  12. 最新ECSHOP解闷商城系统+休闲娱乐EC购物商城源码
  13. 8086CPU指令系统--汇编语言算术运算指令(ADD/ADC、SUB/SBB、INC/DEC、CMP、MUL、DIV)
  14. 自定义 View 实现汉字笔顺动画
  15. ipv4和计算机地址是什么意思,ipv6是什么意思?我们怎么查看电脑iPv6地址
  16. 计算机网络在化学中的应用论文,计算机在化学中应用
  17. C语言BT软件项目总结
  18. Help Hanzo LightOJ - 1197(素数筛法)
  19. OpenMP: sections分段并行
  20. Java观察者模式事件委托(通过dota和王者荣耀故事讲解)

热门文章

  1. perl的安装和版本切换工具-perlbrew
  2. 文档null一段 虚拟机操作
  3. [入门]MyEclipse+tomcat搭建java web环境
  4. 下载的VS2017工程编译出错的问题
  5. 操作系统课设--具有优先级的线程调度
  6. 17. 电话号码的字母组合(回溯算法)
  7. python中常见的异常错误
  8. MoeCTF 2021Re部分------Midpython.exe
  9. python获取IP位置信息
  10. C/C++得到系统启动项