Shell判断字符串变量是否为空的方法实现

目录
  • Bash Shell 判断一个变量是否为空
  • 检查bash shell变量是否为空的另一个方式

您可以将 -z 选项传递给 if 命令或条件表达式。如果STRING的长度为0,variable ($var)为空。test命令用于检查文件类型并比较值。这个页面显示了如何使用test命令确定bash shell变量是否为空。

判断 bash 变量是否为空:

要点:变量两端用双引号括起来

  • 如果bash变量未设置或设置为空字符串,则返回true: if [ -z "$var" ];
  • 另一个选择: [ -z "$var" ] && echo "Empty"
  • 确定bash变量是否为空: [[ ! -z "$var" ]] && echo "Not empty" || echo "Empty"

Bash Shell 判断一个变量是否为空

让我们看看语法和例子的细节。if命令的语法如下:

if [ -z "$var" ]
then
      echo "\$var is empty"
else
      echo "\$var is NOT empty"
fi

OR

if test -z "$var"
then
      echo "\$var is empty"
else
      echo "\$var is NOT empty"
fi

检查bash shell变量是否为空的另一个方式

您还可以尝试控制操作符。语法如下:

[ -z "$var" ] && echo "Empty"
[ -z "$var" ] && echo "Empty" || echo "Not empty"

OR

[[ -z "$var" ]] && echo "Empty"
[[ -z "$var" ]] && echo "Empty" || echo "Not empty"

OR

## 检查 $var 是否设置使用! 即检查 expr 是否为假 ##
[ ! -z "$var" ] || echo "Empty"
[ ! -z "$var" ] && echo "Not empty" || echo "Empty"

[[ ! -z "$var" ]] || echo "Empty"
[[ ! -z "$var" ]] && echo "Not empty" || echo "Empty"

到此这篇关于Shell判断字符串变量是否为空的方法实现的文章就介绍到这了,更多相关Shell 字符串变量为空内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Shell实用技巧:快速去除字符串中的空格

    在整理词库的过程中遇到 一个问题,有些其实是同一个关键词之关有空格的话,无法正常被去重,那么有没有办法能快快速去除这些字符中间的空格呢?经过百度一番,找到一个解决办法,记录一下. 效果如下图所示,图上半部分是示例文本,下半部分就是用shell去掉空格后的效果.其中用到就是下面第3个方法. 在UNIX上使用sed命令进行字符串处理中常常遇到的问题就是行首行尾的空格怎么删除. 下面介绍sed是怎样实现的,当然awk同样可以. 1.删除行首空格 复制代码 代码如下: sed 's/^[ \t]*//g

  • Shell脚本计算字符串长度和判断字符串为空小技巧

    一些需要注意的脚本问题 计算字符串长度可用的三种方法: 复制代码 代码如下: echo "$str"|awk '{print length($0)}' expr length "$str" echo "$str"|wc -c 但是第三种得出的值会多1,可能是把结束符也计算在内了 判断字符串为空的方法有三种: 复制代码 代码如下: if [ "$str" =  "" ] if [ x"$str&qu

  • Shell中去除字符串前后空格的方法

    经常碰到的场景,需要去除字符串中的前后的空格.在Shell中不像其他语言有strip()来处理,不过也是可以使用诸如awk等命令来处理. 下面是一个简单示例: [root@localhost ~]# echo ' A B C ' | awk '{gsub(/^\s+|\s+$/, "");print}' ^\s+            匹配行首一个或多个空格 \s+$            匹配行末一个或多个空格 ^\s+|\s+$    同时匹配行首或者行末的空格 如果不用awk命令

  • linux shell判断字符串为空的正确方法示例

    help命令可以查看帮助 help test Linux 下判断字符串是否为空,有一个大坑! 首先想到的两个参数: -z :判断 string 是否是空串 -n :判断 string 是否是非空串 正确做法: #!/bin/sh STRING= if [ -z "$STRING" ]; then echo "STRING is empty" fi if [ -n "$STRING" ]; then echo "STRING is not

  • Shell中去除字符串里的空格或指定字符的方法

    网上很多办法,虽然是对的,用起来结果不对.这里提供正确办法. 去掉开头的空格 $text=" 123 456 " # 这个写法,保证了得到正确的结果. text=`echo $text | sed -e 's/^[ \t]*//g'` # 这些方法没有测试,写法参照上面的. # 去掉尾巴的空格 sed 's/[ \t]*$//g' # 删除前.后空格,不删除中间空格 sed -e 's/^[ \t]*//g' -e 's/[ \t]*$//g' # 删除字符串中所有空格 sed 's/

  • Shell判断字符串变量是否为空的方法实现

    目录 Bash Shell 判断一个变量是否为空 检查bash shell变量是否为空的另一个方式 您可以将 -z 选项传递给 if 命令或条件表达式.如果STRING的长度为0,variable ($var)为空.test命令用于检查文件类型并比较值.这个页面显示了如何使用test命令确定bash shell变量是否为空. 判断 bash 变量是否为空: 要点:变量两端用双引号括起来 如果bash变量未设置或设置为空字符串,则返回true: if [ -z "$var" ]; 另一个

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

    shell中如何判断一个变量是否为空 shell编程中,对参数的错误检查项中,包含了变量是否赋值(即一个变量是否为空),判断变量为空方法如下: 1.变量通过" "引号引起来 #!/bin/sh para1= if [ ! -n "$para1" ]; then   echo "IS NULL" else   echo "NOT NULL" fi [输出结果]"IS NULL" 2.直接通过变量判断 #!/b

  • JS中判断字符串存在和非空的方法

    看到这个题目你是怎么想的呢?这个很简单啊,typeof 一下,再判断length. if(typeof unknownVariable ==='string' && unknownVariable.length){ ... } 搞定了吗? 如果这个字符串是用new String() 创建的会如何呢?typeof 这个未知变量肯定是 object.你会怎么办? 你肯定还得先判断类型,typeof unknownVariable==='object' ?但你得想还有一个null变量的 type

  • shell 判断字符串是否存在数组中的实现示例

    语法格式: [[ "${array[@]}" =~ "字符串" ]] 示例: #!/bin/sh ##数组 array=( address base cart company store ) # $1 如果存在,输出 $1 exists,$1 如果不存在,输出 $1 not exists if [ "$1" != null ];then if [[ "${array[@]}" =~ "${1}" ]]; t

  • JS判断字符串变量是否含有某个字串的实现方法

    JS判断字符串变量是否含有某个字串的实现方法 varCts = "bblText"; if(Cts.indexOf("Text") > 0 ){ alert('Cts中包含Text字符串'); } indexOf用法: 返回 String 对象内第一次出现子字符串的字符位置. strObj.indexOf(subString[, startIndex]) 参数 strObj 必选项.String 对象或文字. subString 必选项.要在 String 对

  • java判断字符串String是否为空问题浅析

    一.判断一个字符串str不为空的方法有: 1.str == null;2."".equals(str);3.str.length <= 0;4.str.isEmpty();注意:length是属性,一般集合类对象拥有的属性,取得集合的大小.            例如:数组.length就是取得数组的长度.          length()是方法,一般字符串类对象有该方法,也是取得字符串长度.            例如:字符串.length();说明:  1.null表示这个

  • 使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)

    在网站开发中,经常会简单使用js代码来判断字符串中有多少汉字的功能.今天小编抽时间给大家分享实现代码.废话不多说了,直接给大家贴代码了. $("form").submit(function () { var content = editor.getContentTxt(); var sum = 0; re = /[\u4E00-\u9FA5]/g; //测试中文字符的正则 if (content) { if (re.test(content)) //使用正则判断是否存在中文 { if

  • Lua判断字符串中包含中文字符的方法和计算字符串宽度函数分享

    一.判断字符串中包含中文字符的方法 遍历数组,对每个字节使用string.byte(),发现有大于127的,就是汉字,可以参照下面的代码. 二.计算字符串宽度函数 复制代码 代码如下: -- 计算字符串宽度   local str = "Jimmy: 你好,世界!" local fontSize = 20 local lenInByte = #str local width = 0   for i=1,lenInByte do     local curByte = string.by

  • JavaScript判断DIV内容是否为空的方法

    1.问题背景 判断div内部是否为空,如果为空,给出无数据提示:否则显示正常页面 2.实现效果图如下所示: 3.设计源码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xh

  • C#实现判断字符串中是否包含中文的方法

    本实例展示了C#实现判断字符串中是否包含中文的方法,是一个非常实用的功能,对初学者来说有一定的借鉴学习价值,具体实现方法如下: 主要功能代码如下: /// <summary> /// 判断字符串中是否包含中文 /// </summary> /// <param name="str">需要判断的字符串</param> /// <returns>判断结果</returns> public static bool Has

随机推荐