shell学习三参数传递

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

参数传入说明如下:

echo "Shell 传递参数实例"
echo "执行的文件名:$0"
echo "第一个参数为:$1"
echo "第二个参数为:$2"
echo "传递到脚本的参数个数:$#"
echo $* #打印所有输入参数与$@相同
echo $$ #脚本执行的进程号
echo $- #显示shell当前选项     

$*与$@的区别在于

  • 相同点:都是引用所有参数。
  • 不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数 1、2、3,,则 " * " 等价于 "1 2 3"(传递了一个参数),而 "@" 等价于 "1" "2" "3"(传递了三个参数)。
  • #!/bin/bash
    # author:菜鸟教程
    # url:www.runoob.com
    
    echo "-- \$* 演示 ---"
    for i in "$*"; do
        echo $i
    done
    
    echo "-- \$@ 演示 ---"
    for i in "$@"; do
        echo $i
    done
  • $ chmod +x test.sh 
    $ ./test.sh 1 2 3
    -- $* 演示 ---
    1 2 3
    -- $@ 演示 ---
    1
    2
    3

转载于:https://my.oschina.net/u/136848/blog/758687

你可能感兴趣的:(shell,python)