文档章节

linux if 命令判断条件总结

Galy_绿
 Galy_绿
发布于 2016/03/14 19:28
字数 727
阅读 34
收藏 3

关于文件属性的判断式

-a 如果文件存在

-b 如果文件存在,且该文件是区域设备文件

-c 当file存在并且是字符设备文件时返回真

-d 当pathname存在并且是一个目录时返回真

-e 当pathname指定的文件或目录存在时返回真

-f 当file存在并且是普通文件时返回真

-g 当由pathname指定的文件或目录存在并且设置了SGID位时返回为真

-h 当file存在并且是符号链接文件时返回真,该选项在一些老系统上无效

-k 当由pathname指定的文件或目录存在并且设置了“sticky”位时返回真

-r 当由pathname指定的文件或目录存在并且可读时返回为真

-s 当file存在文件大小大于0时返回真

-t 文件描述符   如果文件描述符是开启的,且链接了某一个终端

-u 当由pathname指定的文件或目录存在并且设置了SUID位时返回真

-w 当由pathname指定的文件或目录存在并且可执行时返回真。一个目录为了它的内容被访问必然是可执行的。

-x  如果文件存在,且该文件有可执行的属性

-O 当由pathname指定的文件或目录存在并且被子当前进程的有效用户ID所指定的用户拥有时返回真。

-G  如果文件存在,且该文件为有效的群组 id 所拥有

-L  如果该文件存在,且该文件是符号链接文件

-S  如果该文件存在,且该文件是Socket文件

-N  如果该文件存在,且该文件自上次读取后曾修改过

文件1   –nt  文件2   如果文件1比文件2新,或者文件1存在,文件2不存在

文件1   –ot  文件2   如果文件1比文件2旧,或者文件1不存在,文件2存在

文件1   –ef  文件2   如果文件1和文件2 引用到相同的设备和 inode 编号

 

关于字符串的条件判断式

-z                                           空串 (如果字符串长度为0)

-n                                           非空串 (如果字符串长度不为0)

字符串                                       如果字符串长度不为0

!=                                           如果两个字符串不相等                   

=                                           如果两个字符串相等

==                                          如果两个字符串相等

字符串 1 < 字符串      2            如果字符串1小于字符串2

字符串 1 > 字符串      2            如果字符串1大于字符串2

 

 

 

 

 

 

 

关于算式的条件判断

-eq   等于

-ne    不等于

-gt    大于

-lt    小于

-le    小于等于

-ge   大于等于

 

 

关于 Bash 选项的条件判断

-o set的选项名称         如果选项是开启的状态

本文转载自:http://www.cnblogs.com/TikyZheng/p/3352208.html

共有 人打赏支持
Galy_绿
粉丝 12
博文 133
码字总数 14908
作品 0
海淀
私信 提问
linux shell脚本编程学习总结

0.linux shell脚本编程 对于一些简单的操作,我们可以直接通过在linux 命令行执行就可以了,比如列出文件命令ls -l,但是有时候我们需要完成的任务需要连续执行多条linux命令,而且他们之间具...

i_am_alone
2018/08/11
0
0
《Linux基础知识及命令》系列分享专栏

《Linux基础知识及命令》系列分享专栏 本专题详细为大家讲解了Linux入门基础知识,思路清晰,简单易懂。本专题非常适合刚刚学习Linux的小白来学习,通过学习该专题会让你由入门达到中级的水平...

kaixin_code
2018/12/01
0
0
Linux shell条件表达式

Shell脚本中的条件测试语法可以判断表达式是否成立,若条件成立则返回数字0,否则便返回其他随机数值。 按照测试对象来划分,条件测试语句可以分为4种: 文件测试语句; 逻辑测试语句; 整数...

桓宇Harry
2018/11/04
0
0
读书之--跟我一起写Makefile

前言 以前在Windows下学习的时候,我一直使用Eclipse写C语言程序,比较标准C,GTK+.后来忽有一天学习Linux的时候,看到软件安装那里说了make这个工具,一时之间大是喜欢.因为我本人特别喜欢命令行...

小代码2016
2014/11/10
0
0
linux bash中too many arguments问题的解决方法

本文介绍下在linux bash shell中出现too many arguments问题的解决办法,有需要的朋友参考学习下 转自:http://www.jbxue.com/article/13378.html 判断一个文件的内容是不是为空,使用语句:...

mysoftsky
2013/11/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

租房软件隐私保护如同虚设

近日,苏州市民赵先生向江苏新闻广播新闻热线025-84658888反映,他在“安居客”手机应用软件上浏览二手房信息,并且使用该软件自动生成的虚拟号码向当地一家中介公司进行咨询。可电话刚挂不久...

linux-tao
今天
1
0
分布式项目(五)iot-pgsql

书接上回,在Mapping server中,我们已经把数据都整理好了,现在利用postgresql存储历史数据。 iot-pgsql 构建iot-pgsql模块,这里我们写数据库为了性能考虑不在使用mybatis,换成spring jd...

lelinked
今天
4
0
一文分析java基础面试题中易出错考点

前言 这篇文章主要针对的是笔试题中出现的通过查看代码执行结果选择正确答案题材。 正式进入题目内容: 1、(单选题)下面代码的输出结果是什么? public class Base { private Strin...

一看就喷亏的小猿
今天
2
0
cocoapods 用法

cocoapods install pod install 更新本地已经install的仓库 更新所有的仓库 pod update --verbose --no-repo-update 更新制定的仓库 pod update ** --verbose --no-repo-update...

HOrange
今天
3
0
linux下socket编程实现一个服务器连接多个客户端

使用socekt通信一般步骤 1)服务器端:socker()建立套接字,绑定(bind)并监听(listen),用accept()等待客户端连接。 2)客户端:socker()建立套接字,连接(connect)服务器,连接上后...

shzwork
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部