${变量:?提示信息}是什么意思?

简介: 当待测的变量不存在或者为空时,将返回提示信息,如果待测变量存在,则直接传变量值。

语法:

${待测变量:?提示信息}

当待测的变量不存在或者为空时,将返回提示信息,如果待测变量存在,则直接传变量值。

实例:

### 变量存在时:
[root@www.lutixia.cn ~]# name=lutixia
[root@www.lutixia.cn ~]# echo ${name:?"请传入有效变量值"}
lutixia

因为变量name存在值,所以直接返回变量值。

### 变量不存在时:
[root@www.lutixia.cn ~]# echo $username

[root@www.lutixia.cn ~]# echo ${username:?"请传入有效变量值"}
-bash: num: 请传入有效变量值

因为username变量没有定义过,所以返回提示信息。这个在脚本中可以有效防止未对变量赋值,导致的问题。

相关文章
|
4月前
|
索引 Python
python语法错误赋值错误
【7月更文挑战第10天】
88 6
|
4月前
|
Python
python语法错误变量未定义
【7月更文挑战第9天】
64 1
|
5月前
|
并行计算 监控 DataWorks
函数计算操作报错合集之测试函数时,报错“IndentationError: unexpected indent”,是什么原因
在使用函数计算服务(如阿里云函数计算)时,用户可能会遇到多种错误场景。以下是一些常见的操作报错及其可能的原因和解决方法,包括但不限于:1. 函数部署失败、2. 函数执行超时、3. 资源不足错误、4. 权限与访问错误、5. 依赖问题、6. 网络配置错误、7. 触发器配置错误、8. 日志与监控问题。
|
5月前
|
Windows
qt中编译错误:error: C2001: 常量中有换行符的解决办法
qt中编译错误:error: C2001: 常量中有换行符的解决办法
C --- 自定义一个宏打印当前文件名、函数名、行号
C --- 自定义一个宏打印当前文件名、函数名、行号
274 0
|
6月前
|
编译器 C语言 C++
C/C++未定义行为的例子汇总
C/C++未定义行为的例子汇总
|
Shell Linux
10.2.2 变量的取用与设置:echo, 变量设置规则, unset
10.2.2 变量的取用与设置:echo, 变量设置规则, unset
106 0
解决办法一:GetProcAddress函数返回值总为NULL
解决办法一:GetProcAddress函数返回值总为NULL
222 0
|
C语言
错误解决办法:gcc编译时提示对‘sqrt’未定义的引用
错误解决办法:gcc编译时提示对‘sqrt’未定义的引用
212 0