Shell位置变量&预定义变量的实现

 更新时间:2023年12月28日 09:48:29   作者:浅∶)笑  
Shell位置变量和预定义变量是Shell脚本编程中非常重要的概念,本文主要介绍了Shell位置变量&预定义变量的实现,具有一定的参考价值,感兴趣的可以了解一下

一、位置变量:

1、位置变量语法:

命令 参数1 参数2 参数3.........9以后特殊定义

$0 $1 $2 $3 $4 $5 $6 $7 $8 $9 ....

2、示例:

需求:制定脚本程序,用户自行输入两门学科成绩(整数),自动算出平均分。

[root@localhost ~]# vim avg.sh    #制作脚本
#!/bin/bash
echo -n "平均成绩是:"
echo "($1+$2)/2" | bc


[root@localhost ~]# chmod +x avg.sh     #脚本授权


[root@localhost ~]# ./avg.sh 60 70    #测试脚本
平均成绩是:65

3、总结:

  • 1、位置变量就是$1,$2,$3,$4
  • 2、位置变量预先已经被定义过了。
  • 3、用户使用时,必须携带参数。
  • 4、位置变量不是程序设计的唯一方法。比如read也可以。 

二、预定义变量:

$0 脚本名/程序名

  • $* 所有的参数
  • $# 参数的个数
  • $? 上一个程序的返回值(0是成功,非0失败)
  • $$ 程序的PID

1、示例:

[root@localhost ~]# vim sum.sh     #定义脚本
echo "用户输入的第1个参数是:$1 "
echo "用户输入的第2个参数是:$2 "
echo "用户输入的第3个参数是:$3 "
echo "用户输入的第4个参数是:$4 "
echo "用户输入的第5个参数是:$5 "
echo "用户输入的第6个参数是:$6 "
echo "该程序名为:$0"
echo "该程序携带的所有参数是:$*"
echo "该程序的参数个数是:$#"
echo "该程序的进程号是:$$"


[root@localhost ~]# ./sum.sh 11 22 33 44 55 66 77 88 99    #调用脚本
用户输入的第1个参数是:11 
用户输入的第2个参数是:22 
用户输入的第3个参数是:33 
用户输入的第4个参数是:44 
用户输入的第5个参数是:55 
用户输入的第6个参数是:66 
该程序名为:./sum.sh
该程序携带的所有参数是:11 22 33 44 55 66 77 88 99
该程序的参数个数是:9
该程序的进程号是:111298
[root@localhost ~]# echo $?
0

2、总结:

  • 1、这两类变量,在设计系统时就已经定义好了。

  • 2、需要使用时,直接调用即可。

到此这篇关于Shell位置变量&预定义变量的实现的文章就介绍到这了,更多相关Shell位置变量&预定义变量内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • shell写的告警次数控制及恢复示例代码

    shell写的告警次数控制及恢复示例代码

    自己写的一个监控脚本,发现告警短信次数未控制时,垃圾短信N多。经过思考,做了个简单的控制,同一故障只发送二次。之后不再发送。恢复后发送恢复短信
    2013-02-02
  • ubuntu编译pyav报错libx264 not found解决示例

    ubuntu编译pyav报错libx264 not found解决示例

    这篇文章主要为大家介绍了ubuntu编译pyav报错libx264 not found解决示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Shell实现的Oracle启动脚本分享

    Shell实现的Oracle启动脚本分享

    这篇文章主要介绍了Shell实现的Oracle启动脚本分享,本文直接给出实现代码,需要的朋友可以参考下
    2015-01-01
  • 解决linux的redhat版上mysql字符乱码的问题

    解决linux的redhat版上mysql字符乱码的问题

    下面小编就为大家带来一篇解决linux的redhat版上mysql字符乱码的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • shell脚本传参中包含有空格的参数

    shell脚本传参中包含有空格的参数

    本文主要介绍了shell脚本传参中包含有空格的参数,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • Shell实现程序造死循环的几种方法示例

    Shell实现程序造死循环的几种方法示例

    在linux下编程的程序猿都知道shell脚本,就算你不怎么熟悉,也应该听过的吧!那在shell脚本中的死循环该怎么写呢?下面这篇文章就来给大家介绍了关于Shell如何实现让程序造死循环的几种方法,需要的朋友可以参考下。
    2017-08-08
  • Linux全网最全面常用命令整理(附实例)

    Linux全网最全面常用命令整理(附实例)

    这篇文章主要介绍了Linux命令,是目前最全面的集合,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • Shell脚本中awk指令的用法

    Shell脚本中awk指令的用法

    今天小编就为大家分享一篇关于Shell脚本中awk指令的用法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Linux查看端口占用的几种常用命令

    Linux查看端口占用的几种常用命令

    这篇文章主要介绍了Linux查端口占用的几个常用命令,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2023-09-09
  • csh脚本语法实例

    csh脚本语法实例

    这篇文章主要介绍了csh脚本语法实例,小编看起来和bash shell也差不太多,需要的朋友可以参考下
    2014-11-11

最新评论