Linux中的判断式
格式一:test [参数] 判断内容
格式二:[ [参数] 判断内容 ]
说明:
a.格式二可以认为是格式一的缩写
b.格式二里中括号和内容之间要有空格
基于文件的判断
-d 判断文件是否存在,并且是目录文件
-e 判断文件是否存在
-f 判断文件是否存在,并且是普通文件
-l 判断文件是否存在,并且为符号连接文件
[root@localhost temp]# test -e /etc/passwd
[root@localhost temp]# echo $?
0
[root@localhost temp]# [ -e /etc/passwd ]
[root@localhost temp]# echo $?
0
[root@localhost temp]# [ -d /root ] && echo "yes" || echo "no"
yes
基于文件权限的判断
-r 文件 判断文件是否存在,并且拥有读权限
-w 文件 判断文件是否存在,并且拥有写权限
-x 文件 判断文件是否存在,并且拥有执行权限
[root@localhost temp]# [ -r data.txt ] && echo "yes" || echo "no"
yes
两个文件之间的比较
文件1 -nt 文件2 文件1的修改时间比文件2新
文件1 -ot 文件2 文件1的修改时间比文件2晚
文件1 -ef 文件2 文件1和文件2的inode号是否一样
[root@localhost temp]# ln /xiaol/temp/data.txt /xiaol/temp/lndata.txt
[root@localhost temp]# [ /xiaol/temp/data.txt -ef /xiaol/temp/lndata.txt ] && echo "yes" || echo "no"
yes
两个整数之间的比较
用的是:-eq -ne -gt -lt -ge -le这些,就不多解释了
[root@localhost temp]# [ 23 -ge 22 ] && echo "yes" || echo "no"
yes
两个字符串之间的比较
-z 字符串 判断字符串是否为空
-n 字符串 判断支付传是否为非空
串1 == 串2 两个字符串相等
串1 != 串2 两个字符串不相等
[root@localhost temp]# a=1
[root@localhost temp]# b=2
[root@localhost temp]# [ "$a" == "$b" ] && echo "yes" || echo "no"
no
[root@localhost temp]# name=xiaol
[root@localhost temp]# [ -z "$name" ] && echo "yes" || echo "no"
no
多个判断一起执行
判断1 -a 判断2 逻辑与
判断1 -o 判断2 逻辑或
! 判断1 逻辑非
Linux中的判断式的更多相关文章
- Linux学习-善用判断式
利用 test 指令的测试功能 要检测系统上面某些文件或者是相关的属性时,利用 test 这个指令来工作真是好用得不 得了, 举例来说,我要检查 /dmtsai 是否存在时,使用: [dmtsai@s ...
- linux 中 && 及|| 判断原理
[root@linuxprobe ~]# [ $USER = root ] && echo "root" || echo "user"root[ ...
- linux bash善用判断式
1.利用 test 指令的测试功能 $ test -e hello.sh && echo "ok" || echo "no" ok 2.首先,判 ...
- 浅谈Linux中的各种锁及其基本原理
本文首发于:https://mp.weixin.qq.com/s/Ahb4QOnxvb2RpCJ3o7RNwg 微信公众号:后端技术指南针 0.概述 通过本文将了解到如下内容: Linux系统的并行性 ...
- Linux中的各种锁及其基本原理
Linux中的各种锁及其基本原理 1.概述 通过本文将了解到如下内容: Linux系统的并行性特征 互斥和同步机制 Linux中常用锁的基本特性 互斥锁和条件变量 2.Linux的并行性特征 Linu ...
- linux中判断一个命令是否执行成功
每一条基本命令执行后都有一个返回码,该返回码是用$?表示,执行成功的返回码是0,例如:if [ $? -ne 0 ];then 上一命令执行失败时的操作else 上一命令执行成功时的操作fi例如lin ...
- Linux学习十八之、善用判断式
原文地址:http://vbird.dic.ksu.edu.tw/linux_basic/0340bashshell-scripts_3.php 善用判断式 在第十一章中,我们提到过 $? 这个变量所 ...
- Linux程序开发中如何判断目录是否为根目录?
问题引入 判断某个目录字符串是否是根目录,咋一听很简单,只要判断字符串是否是"/"即可,但是,很多情况下使用的路径是相对路径,那么如何判断相对路径是根目录呢? 思路分析 熟悉Lin ...
- 聊聊 Linux 中的五种 IO 模型
本文转载自: http://mp.weixin.qq.com/s?__biz=MzAxODI5ODMwOA==&mid=2666538919&idx=1&sn=6013c451 ...
随机推荐
- redis清空部分key
redis-cli keys "test:job:*" redis-cli keys "test:job:*" |xargs redis-cli del
- Silverlight实例教程 - Validation客户端同步数据验证(转载)
摘要:在Silverlight 4中,Silverlight Validation有相对的改进,本篇将介绍Silverlight 4中新加入的验证机制功能,IDataErrorInfo客户端同步验证机 ...
- Atitit.提升api兼容性的方法 v3 q326
Atitit.提升api兼容性的方法 v3 q326 1. Atitit.兼容性的“一加三”策略1 2. 2. 扩展表模式1 3. 3. 同时运行模式1 3.1. 3.1. 完美的后向兼容性2 3.2 ...
- 181. Flip Bits【easy】
181. Flip Bits[easy] Determine the number of bits required to flip if you want to convert integer n ...
- python-class(5)
#!/usr/bin/env python #-*- coding:utf-8 -*- ############################ #File Name: class5.py #Auth ...
- Android学习之ItemTouchHelper实现RecylerView的拖拽以及滑动删除功能
今天在群里见大神们提到控件的拖动以及滑动删除的效果实现,就在网上找了资料ItemTouchHelper学习,并实现其功能.不胜窃喜之至,忍不住跟大家分享一下,如今就对学习过程做下简介.帮助大家实现这样 ...
- G - Harmonic Number (II) 找规律--> 给定一个数n,求n除以1~n这n个数的和。n达到2^31 - 1;
/** 题目:G - Harmonic Number (II) 链接:https://vjudge.net/contest/154246#problem/G 题意:给定一个数n,求n除以1~n这n个数 ...
- PHP 高精度计算
运行bcsub函数需要 php-bcmath的扩展. Php: BCMath bc是Binary Calculator的缩写.bc*函数的参数都是操作数加上一个可选的 [int scale],比如st ...
- redis 管道
http://www.w3cschool.cc/redis/redis-pipelining.html
- UIImagePickerController关于图片裁剪
- (UIImage*)scaleImage:(UIImage*)anImage withEditingInfo:(NSDictionary*)editInfo{ UIImage *newImage; ...