`

shell 判断表达式整理

 
阅读更多

SHELL 判断中-a -z意义

[ -a FILE ]  如果 FILE 存在则为真。  

[ -b FILE ]  如果 FILE 存在且是一个块特殊文件则为真。  

[ -c FILE ]  如果 FILE 存在且是一个字特殊文件则为真。  

[ -d FILE ]  如果 FILE 存在且是一个目录则为真。  

[ -e FILE ]  如果 FILE 存在则为真。  

[ -f FILE ]  如果 FILE 存在且是一个普通文件则为真。  

[ -g FILE ]  如果 FILE 存在且已经设置了SGID则为真。  

[ -h FILE ]  如果 FILE 存在且是一个符号连接则为真。  

[ -k FILE ]  如果 FILE 存在且已经设置了粘制位则为真。  

[ -p FILE ]  如果 FILE 存在且是一个名字管道(F如果O)则为真。  

[ -r FILE ]  如果 FILE 存在且是可读的则为真。  

[ -s FILE ]  如果 FILE 存在且大小不为0则为真。  

[ -t FD ]  如果文件描述符 FD 打开且指向一个终端则为真。  

[ -u FILE ]  如果 FILE 存在且设置了SUID (set user ID)则为真。  

[ -w FILE ]  如果 FILE 如果 FILE 存在且是可写的则为真。  

[ -x FILE ]  如果 FILE 存在且是可执行的则为真。  

[ -O FILE ]  如果 FILE 存在且属有效用户ID则为真。  

[ -G FILE ]  如果 FILE 存在且属有效用户组则为真。  

[ -L FILE ]  如果 FILE 存在且是一个符号连接则为真。  

[ -N FILE ]  如果 FILE 存在 and has been mod如果ied since it was last read则为真。  

[ -S FILE ]  如果 FILE 存在且是一个套接字则为真。  

[ FILE1 -nt FILE2 ]  如果 FILE1 has been changed more recently than FILE2, or 如果 FILE1 exists and FILE2 does not则为真。  

[ FILE1 -ot FILE2 ]  如果 FILE1 比 FILE2 要老, 或者 FILE2 存在且 FILE1 不存在则为真。  

[ FILE1 -ef FILE2 ]  如果 FILE1 和 FILE2 指向相同的设备和节点号则为真。  

[ -o OPTIONNAME ]  如果 shell选项 “OPTIONNAME” 开启则为真。  

[ -z STRING ]  “STRING” 的长度为零则为真。  

[ -n STRING ] or [ STRING ]  “STRING” 的长度为非零 non-zero则为真。  

[ STRING1 == STRING2 ]  如果2个字符串相同。 “=” may be used instead of “==” for strict POSIX compliance则为真。  

[ STRING1 != STRING2 ]  如果字符串不相等则为真。 

[ STRING1 < STRING2 ]  如果 “STRING1” sorts before “STRING2” lexicographically in the current locale则为真。  

[ STRING1 > STRING2 ]  如果 “STRING1” sorts after “STRING2” lexicographically in the current locale则为真。  

[ ARG1 OP ARG2 ] “OP” is one of -eq, -ne, -lt, -le, -gt or -ge. These arithmetic binary operators return true if “ARG1” is equal to, not equal to, less than, less than or equal to, greater than, or greater than or equal to “ARG2”, respectively. “ARG1” and “ARG2” are integers. 

 

from:http://blog.csdn.net/thisisvoa/article/category/831682

分享到:
评论

相关推荐

    linux shell 笔记 (未整理)

    3. **条件语句**:`if`、`elif`、`else`用于条件判断,`[ condition ]`或`[[ condition ]]`是测试表达式。 4. **循环语句**:`for`、`while`和`until`用于循环执行代码块。 5. **函数**:`function func_name { ...

    Shell 编程入门 整理版

    - **条件语句**:`if`、`else if`、`else`用于条件判断,`[[`用于更复杂的表达式检查。 - **循环**:`for`循环处理序列,`while`和`until`循环基于条件执行。 - **函数**:定义函数使用`function name() { ...

    Shell十三问-ChinaUnix精华贴整理2007.pdf

    &&和||分别表示逻辑与和逻辑或,在Shell脚本中用于控制流程的分支和条件判断。熟练运用这两个运算符,可以构建出更复杂的逻辑结构。 ### 12. &gt;与&lt;的输入输出重定向 &gt;和&lt;分别用于输出重定向和输入重定向,使Shell...

    Linux常用命令,shell 编程命令整理

    - **条件判断**:在shell脚本中,可以使用`if`、`else if`和`else`结构进行条件判断。比如`[ -f file ]`检查文件是否存在,`[ -d directory ]`检查是否为目录,`[ expression ]`后的表达式可以包含`-eq`(等于)、`...

    shell十三问

    Shell十三问是针对Unix/Linux操作系统中的Bash Shell编程的一份精华整理,主要涵盖了与Shell脚本编程相关的常见问题和特殊语法。以下是对这些知识点的详细解释: 1. **变量** - Shell脚本中,变量用于存储数据,如...

    shell编程,sed,awk,grep等教程整理

    awk的内置变量和函数使数据分析变得极其灵活,它还可以处理数值运算和逻辑判断。 grep(Global Regular Expression Print)是用于搜索文本的命令,它根据正则表达式查找匹配的行。例如,`grep 'pattern' file`会找...

    Shell十三问-ChinaUnix精华贴整理

    ]的差别:在正则表达式中,[^]表示不匹配方括号内的任一字符,[!]表示不匹配方括号内未列出的字符。 这些知识点构成了Shell编程的基础框架,掌握它们对于编写有效的Shell脚本至关重要。在实际应用中,需要不断实践...

    linux shell语言基础笔记 xmind

    这份“Linux Shell语言基础笔记xmind”显然是一个整理了Shell基础知识的思维导图文件,对于初学者或者需要复习Shell语法的人来说,是一个极好的学习资源。 首先,让我们来探讨一下Shell的基础知识。在Linux中,最...

    linux常用shell脚本

    在本资料包中,"linux常用shell脚本"包含了个人整理的运维必备脚本和配置,让我们一起深入探讨一下这个领域的知识。 1. **Shell基础知识** - **Shell类型**:主要有Bash(Bourne-Again SHell)、Sh(Bourne Shell...

    Linux Shell从入门到精通学习笔记

    本文档《Linux Shell从入门到精通》是作者李振良基于个人经验整理的一份全面教程,旨在帮助读者从零基础开始熟悉Linux系统常用命令,掌握Shell脚本语言,并能够独立编写脚本,提升运维效率。 ### Shell基础知识 1. ...

    linuxshell命令unixshell命令教程.rar

    6. **条件表达式和测试命令**:用于进行逻辑判断,如`[ -f file ]`检查文件是否存在。 7. **流程控制**:如`if-else`语句、`for`循环和`case`语句,实现复杂的逻辑处理。 8. **函数**:在Shell脚本中定义,可复用的...

    Shell.program

    根据提供的文件信息,我们可以归纳出一系列与Shell编程相关的知识点,主要涵盖条件判断操作符、文件测试操作符以及算术表达式的使用。 ### 条件判断操作符 在Shell脚本中,条件判断是非常重要的功能之一,它允许...

    shell 编程之 sed 和 gawk 要点总结

    本文将对sed和gawk的使用进行入门到进阶的知识体系总结整理。 首先,我们来看sed的使用要点: 1. sed的基本格式是sed [options] 'command' file。其中,options是可选的选项,比如-n表示不输出模式空间内容,-e...

    awk学习资料最近整理的资料

    2. **模式匹配**:awk中的模式可以是正则表达式,例如`/pattern/`,也可以是逻辑表达式,如`$1&gt;5`。当匹配到模式时,关联的动作被执行。 3. **动作**:在awk中,动作通常是一段代码,如`{print}`,它会打印当前行。...

    阮一峰 Bash 脚本教程.pdf

    - 历史上重要的Shell包括Bourne Shell(sh)、Bourne Again shell(bash)、C Shell(csh)、TENEX C Shell(tcsh)、Korn shell(ksh)、Z Shell(zsh)、Friendly Interactive Shell(fish)等。 - 查看当前运行...

    shell编程---awk 培训资料

    4. **格式化输出**:根据需要,awk可以生成格式化的报告,将数据整理成易于读取的形式。 5. **计算与逻辑操作**:awk支持数值计算和比较运算,可以进行条件判断和逻辑控制,实现复杂的处理逻辑。 **awk的执行方式*...

    《鸟哥的Linux私房菜》基础篇-知识整理-读后感

    第十二章涉及Shell脚本编程,读者将学习如何编写简单的shell脚本,使用条件判断和循环,以及如何调试脚本。 第十三章讲解Linux的账号管理与ACL权限设置,包括用户和组的创建、权限的细致规划,以及PAM模块的应用,...

    notes:请注意,我应该有一天变成博客或其他内容。

    9. **正则表达式**:在Shell中如何使用正则表达式进行文本匹配和处理。 10. **自动化任务**:通过`cron`定时任务服务,实现定期执行脚本。 如果笔记中的内容深入,可能还会包含对高级Shell技巧的探讨,比如函数库...

Global site tag (gtag.js) - Google Analytics