`
dengqsintyt
  • 浏览: 291634 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

shell中如何判断一个变量是否为空

 
阅读更多

        为了更高效的工作,还是感觉把每天工作的内容都记录下来,更好。虽然简单,但是以后再遇到的时候,直接拿过来用,来提高效率。

        今天帮一个同事写一个检测的脚本,有人问我怎么判断变量为空,记录如下:

 

        1.奇怪的写法。不加双引号" "导致的         

 

#!/bin/sh
#filename: example.sh
para=
if [ ! -n $para ]
then
  echo "IS NULL"
else
  echo "NOT NULL"
fi

          结果:NOT NULL

 

 

        2.变量通过" "引号引起来

 

#!/bin/sh
para=
if [ ! -n "$para" ]then
  echo "IS NULL"
else
  echo "NOT NULL"
fi

       结果是:IS NULL

 

 

        3.直接通过变量判断

 

#!/bin/sh
para=
if [ ! $para ]; then
  echo "IS NULL"
else
  echo "NOT NULL"
fi

        结果: IS NULL

 

 

        4.使用test判断

 

#!/bin/sh
dmin=
if test -z "$dmin"
then
  echo "dmin is not set!"
else  
  echo "dmin is set !"
fi

        结果:dmin is not set!

 

 

        5.使用""判断

#!/bin/sh 
dmin=
if [ "$dmin" = "" ]
then
  echo "dmin is not set!"
else  
  echo "dmin is set !"
fi

       结果:dmin is not set!

 

 

 

分享到:
评论

相关推荐

    shell判断一个变量是否为空方法总结

    shell中如何判断一个变量是否为空 shell编程中,对参数的错误检查项中,包含了变量是否赋值(即一个变量是否为空),判断变量为空方法如下: 1.变量通过” “引号引起来 #!/bin/sh para1= if [ ! -n $para1 ]; ...

    Shell脚本中判断变量为数字的3种方法

    在Shell脚本开发中,经常会遇到需要判断一个变量是否为数字的情况。这样的需求通常出现在输入验证、数据处理等场景中。本文将详细介绍三种在Shell脚本中判断变量是否为数字的方法,并提供具体的示例脚本。 #### ...

    Shell脚本中判断输入变量或者参数是否为空的方法

    ### Shell脚本中判断输入变量或者参数是否为空的方法 在Shell脚本开发过程中,经常会遇到需要判断用户输入的变量或参数是否为空的情况。这不仅能够提高脚本的健壮性,还能增强用户体验。本文将详细介绍五种不同的...

    判断Linux Shell环境变量是否存在

    最常用的方法之一是使用`if`语句结合`-z`选项来检查一个变量是否为空。`-z`选项用于测试字符串是否为空(即长度为零)。这是一个简单且有效的技巧: ```bash #!/bin/bash # 假设我们要检查环境变量 PATH 是否存在 ...

    linux超级基础系列-shell变量(本地变量和环境变量)

    例如,如果定义了一个名为`file-name`的变量,并为其赋值为`loop.doc`,那么这个值只在这个当前的Shell环境中有效。一旦离开该Shell环境,变量的值就不再存在。 - **定义与赋值语法**: - `variable-name=value` ...

    shell基础 之 数值运算与运算符 环境变量配置文件 shell登录信息

    一、shell中的数值运算符 在shell中,数值运算符用于对数字进行操作,常见的数值运算符有: * 加法:`a + b` * 减法:`a - b` * 乘法:`a * b` * 除法:`a / b` * 取模:`a % b` 这些运算符可以用来实现简单的...

    深入_Shell_变量操作

    变量替换扩展是Shell编程中的一项强大功能,它允许程序员根据变量的状态(如是否已声明或其值是否为空)来调整脚本的行为。这不仅增加了脚本的灵活性,还提高了代码的可读性和维护性。 #### 基础用法 变量替换扩展...

    linux中shell变量.pdf

    在Linux环境中,Shell脚本是自动化任务和管理系统操作的强大工具。在Shell脚本中,有若干内置变量,这些变量在...总的来说,理解并熟练运用这些Linux Shell变量和命令重定向对于编写自动化脚本和管理日常任务至关重要。

    Shell脚本定义变量和重新赋值

    在Shell脚本中定义变量非常简单,只需指定变量名并赋予一个值即可。值得注意的是,在定义变量时,变量名前不需要添加美元符号`$`,而且变量名与等号之间不允许有空格。例如: ```bash # 正确示例 myVar="Hello, ...

    shell变量学习

    Shell变量赋值是从右到左进行的,如果未赋值,Shell默认赋值为空。例如,`X=$Y`,在`Y`未赋值时,`$X`将为空。此外,变量的赋值可以嵌套,如`Y=y`后再`Z=$Y`,`$Y`的值将被赋给`$Z`。 4. **删除变量** 使用`unset...

    linux shell脚本对未定义变量的判断以及if的用法详解

    then`是一个巧妙的技巧,用来判断`$pid`是否为空。如果`$pid`未定义或为空,那么`"X${pid}"`将等于`"X"`,条件不成立,不会执行`kill`命令。添加`X`字符是为了避免因空格引起的语法错误。 总结来说,理解如何在...

    Shell教程-高级变量.docx

    在默认情况下,Shell变量是没有类型的,但是Bash Shell提供 `declare` 和 `typeset` 命令来指定变量的类型。这些命令可以用来声明只读变量(`-r`),整型变量(`-i`),数组(`-a`),关联数组(`-A`),显示函数名...

    工作笔记 shell 变量和运算符

    变量扩展是 shell 中非常重要的一个概念,它可以让我们以不同的方式访问和操作变量中的值。 ##### 直接引用变量 ```sh echo $testvar ``` 这将直接输出变量 `testvar` 的值。 ##### 使用大括号进行引用 ```sh echo...

    shell脚本如何获取随机数random

    在shell脚本中,$RANDOM是一个环境变量,它的值是0到32767之间的随机数。通过echo $RANDOM可以获取一个随机数来证明当前环境支持此变量。如果不支持,输出将为空。这种方法简单并且易于在脚本中使用,但是产生的...

    浅谈shell循环中变量的作用域问题

    最近实现了一个shell脚本,功能简单来说就是从文件中按行读取然后将所有行拼接成一行写入一个文件,关键代码如下 path_all= cat $1 | while read line do if [ $path_all == ];then path_all=$line else path_...

    shell中条件判断if中的-z到-d的意思

    在深入探讨shell脚本中`if`语句的条件判断逻辑之前,我们首先需要理解shell脚本的基础概念。Shell脚本是一种为Unix操作系统家族(包括Linux)编写的脚本语言,它允许用户通过一系列命令来自动化任务处理。`if`语句...

Global site tag (gtag.js) - Google Analytics