shell中脚本参数传递getopts】的更多相关文章

while getopts ":a:b:c:" opt do case $opt in a) echo "参数a的值$OPTARG" ;; b) echo "参数b的值$OPTARG" ;; c) echo "参数c的值$OPTARG" ;; ?) echo "未知参数" exit ;; esac done 输出 bogon:Desktop macname$ ./test.sh -a -b -c 参数a的值…
原文地址:http://blog.csdn.net/abc86319253/article/details/46341839    在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的变量和函数 的变量的作用域问题可能令你费解,在这里梳理一下这个问题.   (1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或 被显示删除的地方为止.   例1:脚本变量的作用域 #!/bin/bash #define the function ltx_f…
脚本:运行的副作用不影响父环境,开辟了fork子进程; 函数:副作用,定义的变量,数据默认直接添加到了调用者的环境,也是它自己的环境;不想副作用影响调用者环境,就必须主动用local修饰; shell 中的参数只有一种类型:字符串,或者数字意义的字符串;使用=就意味着对变量进行赋数值,右边默认为字符串变量 函数中要使用传数组只能: 1.数组可以转换成字符串传入函数; 2.不使用参数,使用全局数组 双引号在shell 中意义非凡,它不仅仅代表字符串,被它包起来的数组"${arrname[@]}&q…
在shell中定义函数可以使代码模块化,便于复用代码.不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题. (1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. 例1:脚本变量的作用域#!/bin/bash#define the function ltx_funcltx_func(){   echo $v1   #modify the variable v1   v1=200 }#define the…
原文链接 我们先来定义一个方法 function methodName() { paramName1=$1 paramName2=$2 paramName3=$3 # 依此类推,参数是从1开始标号,而不是0,切记 # # do something # echo "${param1}${param2}${param3}" } 上面我们定义了一个接受三个参数的方法,我们调用时需要传递三个参数,调用如下 result=`methodName "abc" "d&q…
一.getopts 简介 由于shell命令行的灵活性,自己编写代码判断时,复杂度会比较高.使用内部命令 getopts 可以很方便地处理命令行参数.一般格式为:getopts optstring name [args]       getopts 的设计目标是在循环中运行,每次执行循环,getopts 就检查下一个命令行参数,并判断它是否合法.即检查参数是否以 - 开头,后面跟一个包含在 options 中的字母.如果是,就把匹配的选项字母存在指定的变量 variable 中,并返回退出状态0…
1.使用dos2unix命令处理在windows下开发的脚本 将windows下编辑的脚本放置到linux下执行的情况如下: [root@ks ~]# cat -v nginx.sh #!/bin/bash^M a=1 n^M sum=0 ^M while ((a <=50 ))^M do^M ((sum=sum+a)) ^M ((a++)) ^M done^M [root@ks ~]# sh nginx.sh     #执行脚本 : command not found: command not…
在执行Shell脚本的时候,可以在执行时带上参数,相当于传递参数给脚本,下面我们看一下怎么使用这个参数 以下蓝色字体部分为Linux命令,红色字体的内容为输出的内容: # cd /opt/scripts # vim script05.sh 开始编写script05.sh的脚本,脚本内容为: #! /bin/sh echo "$# 个参数" echo "参数内容:$@" echo "第一个参数内容:$1" ps -ef|grep $1 # chmo…
http://blog.csdn.net/ltx19860420/article/details/5570902 1. shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止. #!/bin/bashltx_func() {   echo $v1   v1=200 }v1=100ltx_funcecho $v1结果:100200 解析:脚本变量v1的作用域从被定义的地方开始,到shell结束.调用函数ltx_func的地方在变量v1的作用域…
getpots是Shell命令行参数解析工具,旨在从Shell Script的命令行当中解析参数.getopts被Shell程序用来分析位置参数,option包含需要被识别的选项字符,如果这里的字符后面跟着一个冒号,表明该字符选项需要一个参数,其参数需要以空格分隔.冒号和问号不能被用作选项字符.getopts每次被调用时,它会将下一个选项字符放置到变量中,OPTARG则可以拿到参数值:如果option前面加冒号,则代表忽略错误: 命令格式: getopts optstring name [arg…