`

Linux系统shell脚本判断变量文件目录:权限、是否存在、空值、相等

阅读更多

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

基本上和其他脚本语言一样。没有太大区别。不过值得注意的是。[]里面的条件判断。

分享到:
评论
1 楼 yangxiutian 2012-05-31  
文件夹是否为空怎么判断

相关推荐

    shell脚本学习

    在IT行业中,Linux Shell脚本是系统管理员和开发者日常工作中不可或缺的工具,它允许用户通过命令行接口自动化执行一系列操作。本压缩包“shell脚本学习”提供了丰富的资源,帮助你深入理解并掌握Linux Shell脚本...

    强力推荐Shell 脚本教程 ppt

    - **应用场景**:Shell脚本广泛应用于系统管理任务、数据处理、文件管理等领域。 ##### Shell变量 - **基本概念**:Shell变量用于存储不同类型的数据。它们是Shell脚本的基础,对于编写有效和灵活的脚本至关重要。 ...

    linuxshell脚本学习笔记文.pdf

    Linux Shell脚本是Linux操作系统中进行自动化任务处理的重要工具,它允许用户编写一系列命令来执行复杂的操作。在本文中,我们将深入探讨Linux Shell脚本学习的一些关键知识点。 首先,命令提示符`[dyl@localhost ~...

    shell脚本报错:"[: =: unary operator expected"解决办法

    在使用Shell脚本编程时,有时我们可能会遇到一个常见的错误提示:“[: =: unary operator expected”。这个错误通常出现在我们尝试进行条件判断时,尤其是当我们在`if`语句中使用`[ ... ]`或者`[[ ... ]]`进行比较...

    linux shell 简明教程.pdf

    #### 一、Linux操作系统与Shell脚本编程基础 **Shell**作为Linux操作系统的交互界面,是用户与操作系统之间的桥梁。掌握Shell的基础知识和脚本编程技巧,能够极大地提高系统管理效率及自动化处理能力。 #### 二、...

    Linux常用命令和管理10-shell之条件测试及脚本实例11

    c) **文件测试**:主要用于检查文件或目录的存在、权限、类型等,如`-e`(存在),`-f`(普通文件),`-d`(目录),`-s`(非空文件),`-r`(可读),`-w`(可写),`-x`(可执行)等。 在进行字符串比较时,...

    shell基础 (pdf) txt版 ,适合于初级和高级shell编程者

    Shell是Linux和Unix系统中的命令解释器,它提供了一个用户与操作系统内核交互的界面。这份"shell基础"的学习资料,无论是对初学者还是有一定经验的shell编程者,都是一份非常宝贵的资源。以下是根据标题和描述提炼出...

    shell编程入门.docx

    - **test命令**:`if [ -f file.c ]`检查file.c是否存在,`-f`是测试文件是否存在的条件。 - **if-then-else-if结构**:`elif`可以添加额外的条件分支。 3. **错误处理** - **变量未赋值**:在上面的示例中,...

    linux中的变量详解[参考].pdf

    在Linux系统中,Shell脚本是自动化任务的强大工具,而变量是Shell编程中的核心概念。本文将详细解析Linux Shell中的变量及其使用方法。 首先,Shell本地变量,也称为局部变量,仅在当前Shell会话中有效,不会影响...

    linux中的变量详细讲解.doc

    Shell脚本是编写一系列命令的文本文件,而在这个环境中,变量扮演着关键角色,它们用于存储数据并帮助实现更复杂的逻辑。本篇文章将深入讲解Linux Shell中的变量。 首先,我们来看一下**本地变量**,也称为**SHELL...

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

    在本篇文章中,我们将详细介绍几种常用的Shell判断变量是否为空的方法。 1. 使用`-n`选项: ```bash #!/bin/sh para1= if [ ! -n "$para1" ]; then echo "IS NULL" else echo "NOT NULL" fi ``` 在这个...

    13_questions_of_shell, shell十三问--shell教程(markdown 版本).zip

    Shell,作为Linux/Unix系统中的命令解释器,是用户与操作系统交互的重要工具。它不仅用于执行单一的命令,还能编写复杂的脚本,实现自动化任务处理。这份“13_questions_of_shell”教程以Markdown格式提供了关于...

    velocity为空判断

    $xxx)` 和 `#if ($xxx)` 的区别在于,前者还会在变量未定义的情况下判断为真,而后者仅在变量存在但值为空时判断为假。 此外,对于数组或列表等集合类型,可以使用`.size()`方法检查其长度来判断是否为空: ```...

    linux shell中curl 发送post请求json格式问题的处理方法

    这里的 `$btime` 在Shell中会被立即扩展,但结果会导致JSON格式错误,因为JSON中的字符串应当由双引号包围,而不是变量的空值。 在另一个例子中,发送包含多个键值对的JSON对象: ```bash curl -i -X POST -H '...

    js判断变量是否空值的代码

    在JavaScript开发中,经常需要对变量进行是否空值的判断,以保证程序的逻辑正确性和健壮性。所谓空值,通常指的是那些在逻辑上被认为是“空”的值,这些值在进行某些操作时,需要特别处理。本知识点将详细介绍如何在...

    JS判断变量是否为空判断是否null

    在实际开发中,常常需要通过判断变量是否为null或undefined来确定是否需要进行某些操作,或者是否应该赋予默认值。 为了准确地进行判断,可以编写一个函数来进行检查。从给定文件内容中,我们可以看到一个示例函数...

    空值的判断,空值的过滤,补全空值.ipynb

    空值的判断,空值的过滤,补全空值.ipynb

    判断表是否为空:表数据为空或者表数据不为空但是有任何一个字段为空都返回0,否则返回1

    【键识别表空值状态SQL脚本】 判断表是否为空:表数据为空或者表数据不为空但是有... 4、脚本轻量,采用高级逻辑算法运行速度快,能够智能识别表是否完全空置,或是存在某个字段数据的空值情况,大大节省宝贵时间。

    python处理csv中的空值方法

    最后,通过`if __name__ == "__main__":`来判断是否直接执行该脚本,如果是直接执行,则会运行`tf.app.run(main)`,这会执行`main`函数。在`main`函数中,会读取配置好的训练数据文件路径,并调用`cut_word`函数进行...

Global site tag (gtag.js) - Google Analytics