shell基础-bash变量-预定义变量(图文详细)

前言

  • 其实位置参数变量属于预定义变量的一种,它的内容比较多,所以一般单独拿出来。他跟预定义变量都一样的。系统事先规定好的,变量名不能更改,变量的作用不能更改,能做的只能往里面传入不同的值。

1. 预定义变量

预定义变量作用
$?最后一此执行的命令的返回状态。如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值为非0(具体是哪个数,由命令自己来决定),则证明上一个命令执行不正确
$$当前进程的进程号(PID)
$!后台运行的最后一个进程的进程号(PID)

举个栗子:

  • (1)为什么错误返回值为127那??? 系统规定好的,当碰到命令找不到的时候,给$?传递的值就是127,文件找不到时返回2.
    在这里插入图片描述

$?的主要作用: 用来接收和判断上一条命令是否正确执行。比如: || 逻辑或 第一条命令不能执行的时候,第二条命令才能执行。后面这条命令是怎么知道第一条命令是否正确执行那,归根结底就是判断\ $? 如果\ $?是0那么第一条命令正常执行,如果\ $?不等于0,那么第一条命令不能正确执行。有可能有疑问: 一条命令是正确的,因为有结果。一条命令是错误的。因为有报错。这样的命令判断结果,是给用户看的。但是要让计算机怎么知道这条命令的正确执行那,就只能依赖\ $? 写的程序如何判断上一条命令正确执行那,就只能依赖$?

  • (2) 写一个脚本,让其执行,结果显示当前进程的进程号,显示后台运行的最后一个进程的进程号。最小化就是放入后台,&代表放进了后台执行
    在这里插入图片描述
    在这里插入图片描述

2.接收键盘输入(重要)

命令: read [选项] [变量名]
选项:
            -p   “提示信息”   :在等待read输入时,输出提示信息
            -t      秒数           :read命令会一直等待用户输入,使用此选项可以指定等待时间
            -n     字符数       :read命令只接受指定的字符数,就会执行
            -s                       :隐藏输入的数据,适用于机密信息的输入

开始实验:
(1) 写一个脚本,包含四种选项类型,然后执行。
在这里插入图片描述
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值