• ShellScript值传递参数


    Shell传递参数

    ######################################摘自菜鸟教程:http://www.runoob.com/linux/linux-shell-passing-arguments.html #####################################

    1、shell脚本传递参数

    向脚本传递参数,脚本内获取参数的格式为:$nn 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……

    #!/bin/bash

    echo "Shell脚本传递参数学习!"

    echo "执行的文件名:$0"

    echo "第一个参数为$1" ##第一个参数为1

    echo "第二个参数为$2" ##第二个参数为2

    echo "第三个参数为$3" ##第三个参数为3

    执行shellscript脚本:./bian_trans1.sh 1 2 3

    2、特殊字符来处理参数

    参数处理

    说明

    $#

    传递到脚本的参数个数

    $*

    以一个单字符串显示所有向脚本传递的参数。
    如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。

    $$

    脚本运行的当前进程ID号

    $!

    后台运行的最后一个进程的ID号

    $@

    与$*相同,但是使用时加引号,并在引号中返回每个参数。
    如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。

    $-

    显示Shell使用的当前选项,与set命令功能相同。

    $?

    显示最后命令的退出状态。0表示没有错误,其他任何值表明有错误。

    例子:

    #!/bin/bash

    echo "Shell脚本传递参数学习!"

    echo "执行的文件名:$0"

    echo "第一个参数为$1"

    echo "第二个参数为$2"

    echo "第三个参数为$3"

    echo "传递到脚本的参数个数为:$#"  ##传递到脚本的参数个数为:3

    echo "传递到脚本的参数为:$*" ##传递到脚本的参数为:1 2 3

    echo "脚本运行的当前进程ID号:$$" ##脚本运行的当前进程ID号:14483

    echo "后台运行的最后一个进程的ID号:$!" ##后台运行的最后一个进程的ID号:

    echo "传递到脚本的参数为:"$@"" ##传递到脚本的参数为:1 2 3

    echo "当前shell使用的选项为:$-" ##前shell使用的选项为:hB

    echo "最后命令的退出状态:$?" ##0表示没有错误,其他任何值表明有错误  ##最后命令的退出状态:0

    运行当前脚本:./bian_trans2.sh 1 2 3

    备注:$*与$@的区别

    相同点:都是引用所有参数。

    不同点:只有在双引号中体现出来。

    #!/bin/bash

    ###演示$*的效果

    echo "-----$*的演示效果----"

    for i in "$*";do

            echo $i

    done

    ###打印效果:-----$*的演示效果----

    1 2 3

    ###演示$@的效果

    echo "-----$@的演示效果-----"

    for j in "$@";do

            echo $j  

    done

    ###打印效果:-----$@的演示效果-----

    1

    2

    3

  • 相关阅读:
    软件架构学习小结
    Azure编程笔记(1):序列化复杂类型的TableEntity字段
    目标检測的图像特征提取之(一)HOG特征
    Gmail POP3设置
    MP3的频率、比特率、码率与音质的关系
    Oracle Dataguard 介绍
    【Github教程】史上最全github用法:github入门到精通
    Xcode6在10.9.4上面crash解决
    OpenCV 编程简单介绍(矩阵/图像/视频的基本读写操作)
    调用ShellExecute所须要头文件
  • 原文地址:https://www.cnblogs.com/tengjiang/p/10713582.html
Copyright © 2020-2023  润新知