Linux shell 逻辑运算符 逻辑表达式详解.docx
《Linux shell 逻辑运算符 逻辑表达式详解.docx》由会员分享,可在线阅读,更多相关《Linux shell 逻辑运算符 逻辑表达式详解.docx(12页珍藏版)》请在第壹文秘上搜索。
1、shell的逻辑运算符涉及有以下几种类型,因此只要适当选择,可以解决我们很多复杂的判断,达到事半功倍效果。一、逻辑运算符1、逻辑卷标表示意思1)关于档案与目录的侦测逻辑卷标f常用!侦测档案是否存在eg:ifffilenamed常用!侦测目录是否存在b侦测是否为一个block档案c侦测是否为一个character档案S侦测是否为一个socket标签档案1.侦测是否为一个ITsymbolicIink的档案e侦测某个东西是否存在!2)关于程序的逻辑卷标G侦测是否由GID所执行的程序所拥有0侦测是否由UID所执行的程序所拥有P侦测是否为程序间传送信息的namepipe或是FIFo(老实说,这个不太懂!
2、)3)关于档案的属性侦测r侦测是否为可读的属性W侦测是否为可以写入的属性X侦测是否为可执行的属性S侦测是否为非空白档案U侦测是否具有FSUlDj的属性g侦测是否具有FSGlDj的属性k侦测是否具有stickybit的属性4)两个档案之间的判断与比较;Wtestfilelntfile21nt第一个档案比第二个档案新ot第一个档案比第二个档案旧ef第一个档案与第二个档案为同一个档案(link之类的档案)5)逻辑的和(and)J或(Or)J&逻辑的AND的意思Il逻辑的OR的意思2、运算符号代表意义二等于应用于:整型或字符串比较如果在U中,只能是字符串!二不等于应用于:整型或字符串比较如果在口中,只
3、能是字符串V小于应用于:整型比较在中,不能使用表示字符串大于应用于:整型比较在U中,不能使用表示字符串eq等于应用于:整型比较ne不等于应用于:整型比较It小于应用于:整型比较gt大于应用于:整型比较Ie小于或等于应用于:整型比较ge大于或等于应用于:整型比较a双方都成立(and)逻辑表达式-a逻辑表达式0单方成立(or)逻辑表达式-0逻辑表达式Z空字符串n非空字符串二、逻辑表达式1、test命令使用方法:testEXPRESSION如:lrootlocalhost-l#test1=1&echookokIroOtloCaIhoSt#testd/etc/&echookoklrootlocalho
4、st-#test1eq1&echookoklrootlocalhost-#iftest1=1henecho,okfiok注意:所有字符与逻辑运算符直接用“空格”分开,不能连到一起。2、精简表达式U表达式lrootlocalhost|#l1eq1&echookokrootkCaIhOSV1&echookbash:2:Nosuchfileordirectoryrootlocalhost#21fe,需要加转义字符,表示字符串大小比较,以acill码位邕作为比较。不直接支持运算符,还有逻辑运算符|&它需要用aandj-oor表示表达式rootlocalhost-#1eq1&echookokrootlo
5、calhost-$25&echookok注意:山运算符只是口运算符的扩充。能够支持v,符号运算不需要转义符,它还是以字符串比较大小。里面支持逻辑运算符:|&3、性能比较bash的条件表达式中有三个几乎等效的符号和命令:test,和川。通常,大家习惯用if;then这样的形式。而山的出现,根据ABS所说,是为了兼容之类的运算符。以下是比较它们性能,发现是最快的。Stime(formin1.1(XXXX);dotestd.;done;)realm.658suserm.558ssys0m0.100sStime(formin1.1OOOOO;dod.;done;)rea10m0.609suserm.5
6、24ssys0m0.085sStime(fo11nin1.100000;dod.;done;)realm.311suserm.275ssys0m0.036s不考虑对低版本bash和对Sh的兼容的情况下,用川是兼容性强,而且性能比较快,在做条件运算时候,可以使用该运算符。附1.inuxShell脚本总结及语法速查1.HelloWorld1.1. 基本结构创建helloWorld.sh文件,写入如下内容:#!/bin/bashechonhelloworldM其中#!告诉系统其后路径所指定的程序是解释此脚本文件的Shell程序,常见的Shell程序有以下几类(可通过命令cat/etc/shells查
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Linux shell 逻辑运算符 逻辑表达式详解 逻辑运算 逻辑 表达式 详解