Linux系统shell脚本判断变量文件目录:权限、是否存在、空值、相等
先写一些基本语法:
1、字符串判断
str1 = str2 当两个串有相同内容、长度时为真
str1 != str2 当串str1和str2不等时为真
-n str1 当串的长度大于0时为真(串非空)
-z str1 当串的长度为0时为真(空串)
str1 当串str1为非空时为真
2、数字的判断
int1 -eq int2 两数相等为真
int1 -ne int2 两数不等为真
int1 -gt int2 int1大于int2为真
int1 -ge int2 int1大于等于int2为真
int1 -lt int2 int1小于int2为真
int1 -le int2 int1小于等于int2为真
3 文件的判断
-r file 用户可读为真
-w file 用户可写为真
-x file 用户可执行为真
-f file 文件为正规文件为真
-d file 文件为目录为真
-c file 文件为字符特殊文件为真
-b file 文件为块特殊文件为真
-s file 文件大小非0时为真
-t file 当文件描述符(默认为1)指定的设备为终端时为真
3、复杂逻辑判断
-a 与
-o 或
! 非
下面是一些使用实例:
#!/bin/sh
myPath="/var/log/httpd/"
myFile="/var /log/httpd/access.log"
#这里的-x 参数判断$myPath是否存在并且是否具有可执行权限
if [ ! -x "$myPath"]; then
mkdir "$myPath"
fi
#这里的-d 参数判断$myPath是否存在
if [ ! -d "$myPath"]; then
mkdir "$myPath"
fi
#这里的-f参数判断$myFile是否存在
if [ ! -f "$myFile" ]; then
touch "$myFile"
fi
#其他参数还有-n,-n是判断一个变量是否是否有值
if [ ! -n "$myVar" ]; then
echo "$myVar is empty"
exit 0
fi
#两个变量判断是否相等
if [ "$var1" == "$var2" ]; then
echo '$var1 eq $var2'
else
echo '$var1 not eq $var2'
fi
if list then
do something here
elif list then
do another thing here
else
do something else here
fi
EX1:
#!/bin/sh
SYSTEM=`uname -s` #获取操作系统类型,我本地是linux
if [ $SYSTEM = "Linux" ] ; then #如果是linux的话打印linux字符串
echo "Linux"
elif [ $SYSTEM = "FreeBSD" ] ; then
echo "FreeBSD"
elif [ $SYSTEM = "Solaris" ] ; then
echo "Solaris"
else
echo "What?"
fi #ifend
基本上和其他脚本语言一样。没有太大区别。不过值得注意的是。[]里面的条件判断。
分享到:
相关推荐
空值的判断,空值的过滤,补全空值.ipynb
判断变量是否空值undefined, null, '', false, 0, [], {} 均返回true,否则返回false
MySQL有一个特殊的等于运算符“”,当两个表达式彼此相等或都等于空值时,它的值为TRUE,其中有一个空值或都是非空值但不相等,这个条件就是FALSE。 【例】 查询Sell表中还未收货的订单情况。 SELECT * FROM Sell ...
这个变量(通常作为实际文件安装目录的父目录,可以理解为其它实际文件安装目录的前缀)用于构造下列(除这两个安装根目录以外的其它目录变量)变量的缺省值。变量“prefix”缺省值是“/usr/local”。创建完整的GNU...
Function inull(Val) Dim tmp tmp = False If IsNull(Val) Then tmp = True ElseIf IsEmpty(Val) Then tmp = True ElseIf Trim(Val) = “” Then tmp = True End If inull = tmp End Function 测试变量是否为空值,...
iOS,对nsstring的扩展,实现了判断字符串是否为空。。
Flas 3、空值 、空值None None是⼀个特殊的常量,不表⽰任何类型 作⽤:通常⽤来绑定占位,变量解除绑定 tips:None和其他任何类型对象进⾏⽐较永远返回Flase 此外,Python还提供了列表、字典等多种数据类型,还允许...
主要介绍了Java中String判断值为null或空及地址是否相等的问题,文中举了简单的例子对字符串类型的值和地址问题进行讲解,需要的朋友可以参考下
JavaScript本身没有判断一个变量是不是空值的函数,因为变量有可能是string,object,number,boolean等类型,类型不同,判断方法也不同。所以在文章中写了一个函数,用以判断JS变量是否空值,如果是undefined, ...
其中,isnull()能够判断数据中元素是否为空值;T为转置;any()判断该行是否有空值。 import pandas as pd import numpy as np n = np.arange(20, dtype=float).reshape(5,4) n[2,3] = np.nan index = ['index1', '...
判断变量为空,在许多场合都会用到,同时自己和许多新手一样也经常会犯一些错误,所以自己整理了一下PHP中一些常用的、判断变量为空的方法
Python数据类型和变量知识讲解( 浮点数、布尔值、空值、变量详细代码练习).docx
python 对csv数据含有空值的进行行的删除,以及重复数据进行删除
指定的令牌访问ID和访问密钥必须具有足够的权限才能执行请求的操作 参数 在运行时将所有列出的参数指定为容器环境变量。 帐户: 描述: LogicMonitor帐户名称 必需的: 真的 默认: 空值 access_id: 描述: ...
oraclesql判断值为空-Oracle-sqlserver的空值(null)判断.pdf
ThinkPHP模板的empty标签用于判断模板变量是否为空值。 ThinkPHP模板empty标签用来判断模板变量是否为空值,其功能相当于PHP中的empty()函数行为。empty标签使用格式如下: 变量名>要输出的内容 具体用法如下例所示...
为什么fwrite写文件后,用fread读出来文件长度是0,即fread读不出数据
3、系统能方便快速录入文件信息,录入完全键盘控制,并支持定义简单的值替代录入和对下一条记录文件条目值进行递增、重复、空值的处理。 4、系统表格支持多种导出格式(EXCEL、WORD、HTM、TXT)。 5、系统提供...