1.6-if判断的几种用法

1:判断文件的类型和权限:

if [ -f 1.txt ];then echo ok;fi                 判断1.txt是否是文件且存在;满足输出ok;结束

if [ -d 1.txt ];then echo ok;fi                 判断1.txt是否是目录且存在;满足输出ok;结束

判断文件的类型 :  -f 文件  -d 目录  -b 块设备  -l 软链接  -s socket文件

判断文件的权限:   -r 可读  -w 可写  -x 可执行

if [ -d /tmp ] && [ -f 1.txt ];then echo ok;fi      &&并且

if [-d /tmp -a -f 1.txt];then echo ok;fi            -a参数并且

判断/tmp是否为目录并且1.txt是否为文件,如果是,输出ok;结束

if [ -d /tmp ] || [ -f 1.txt ];then echo ok;fi      ||或者

if [-d /tmp -o -f 1.txt];then echo ok;fi            -o参数或者

判断/tmp是否为或者并且1.txt是否为文件,如果满足其中之一,输出ok;结束

2:判断字符串是否为空:   -n 字符串是否不为空     -z 字符串是否为空

例:判断用户输入是否为数字

#!/bin/bash

read -p "Please input a number" num

m=`echo $num |sed ‘s/[0-9]//g‘`

if [ -n "$m" ]                     #如果变量$m没有双引号,不能正常判断结果。单引号也不行!

then

echo "The character you input isnot a number,please retry."

else

echo $num

fi

判断系统中是否存在一个用户

#!/bin/bash

read -p "Please input user name:" name

if grep -q "^$name:" /etc/passwd        #变量切记用双引号,单引号不可以。-q为不输出匹配结果

then

echo "This user is exist."

else

echo "This user is not exist."

fi

时间: 2024-08-30 02:39:09

1.6-if判断的几种用法的相关文章

if判断的几种用法

if判断语句1:   #!/bin/bash    read -p "please input a number: " n    m=`echo $n|sed 's/[0-9]//g'`    if [ -z $m ]    then        echo $n  else  echo "please input valid number."   fi if判断语句2: 1 #!/bin/bash  2 read -p "please input a n

二.jQuery源码解析之构建jQuery之构建函数jQuery的7种用法

一:$(selectorStr[,限制范围]),接受一个选择器(符合jQuery规范的字符串),返回一个jQuery对象;二:$(htmlStr[,文档对象]),$(html[,json对象])传入html字符串,创建一个新的dom元素 三:$(dom元素),$(dom元素集合)将dom元素转换成jQuery对象.四:$(自定义对象)封装普通对象为jQuery对象.五:$(回调函数)绑定ready事件监听函数,当Dom加载完成时执行.六:$(jQuery对象)接受一个jQuery对象,返回一个j

string的七种用法

以下是string的七种用法,注意哦,记得要时常去查看java的API文档,那个里面也有很详细的介绍 1>获取 1.1:字符串中包含的字符数,也就是字符串的长度.  int length():获取长度 1.2:根据位置获取位置上某个字符.  char charAt(int index) 1.3:根据字符获取该字符在字符串中的位置.  int indexOf(int ch):返回的是ch在字符串中第一次出现的位置.  int indexOf(int ch,int fromIndex):从fromI

java中String的21种用法

(构造函数必须new出来) * public String (char[] vaue)                         将一个字符数组变成字符串(构造函数) * public String (char[] vaue,int offset,int count)    将制定范围内的字符数组变为字符串(构造函数) * public String (byte[],bytes)                        将一个byte数组变为字符串(构造函数) * public St

c++ operator操作符的两种用法:重载和隐式类型转换,string转其他基本数据类型的简洁实现string_cast

C++中的operator主要有两个作用,一是操作符的重载,一是自定义对象类型的隐式转换.对于操作符的重载,许多人都不陌生,但是估计不少人都不太熟悉operator的第二种用法,即自定义对象类型的隐式转换,我们下面就用以下这个小例子温故一下这两种用法: 1 #include <iostream> 2 #include <sstream> 3 using namespace std; 4 5 class FuncObj 6 { 7 public: 8 FuncObj(int n):

DOS/BAT批处理if exist else 语句的几种用法

在DOS批处理命令中常常会通过if语句来进行判断来执行下面的命令, 那么批处理if语句怎么用呢,下面学无忧小编就来说说有关批处理if以及if exist else语句的相关内容.一.批处理if书写格式if 条件表达式 (语句1) else (语句2),它的含义是:如果条件表达式成立,那么,就执行语句1,否则,将执行语句2.二.四种批处理if的用法1.判断驱动器.文件或文件夹是否存在,用 if exist 语句例如:if exist c:\xue51com.txt (echo c盘下有xue51c

shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case语句

笔记内容: 20.5 shell脚本中的逻辑判断 20.6 文件目录属性判断 20.7 if特殊用法 20.8/20.9 case判断 笔记日期:2017-11-22 20.5 shell脚本中的逻辑判断 在所有的编程语言中都会有if语句来进行逻辑判断,所以在shell中也不例外. Shell的if语句的判断条件和其他编程语言一样写在if关键字的那一行,但是需要使用方括号括起来,并且变量和逻辑运算符以及方括号都要用空格隔开,这一点和其他的编程语言不一样,整个if语句块以fi关键字表示结尾,the

Console的9种用法

Console的9种用法,1.显示信息的命令 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <!DOCTYPE html> <html> <head>     <title>常用console命令</title>     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </

Linux内核中等待队列的几种用法

Linux内核里的等待队列机制在做驱动开发时用的非常多,多用来实现阻塞式访问,下面简单总结了等待队列的四种用法,希望对读者有所帮助. 1. 睡眠等待某个条件发生(条件为假时睡眠): 睡眠方式:wait_event, wait_event_interruptible 唤醒方式:wake_up (唤醒时要检测条件是否为真,如果还为假则继续睡眠,唤醒前一定要把条件变为真) 2. 手工休眠方式一: 1)建立并初始化一个等待队列项 DEFINE_WAIT(my_wait) <==> wait_queue