Linux shell脚本中if的“-e,-d,-f” 说明
1、文件表达式
序号 | 参数 | 说明 |
1 | -e filename | 如果 filename存在,则为真 |
2 | -d filename | 如果 filename为目录,则为真 |
3 | -f filename | 如果 filename为常规文件,则为真 |
4 | -L filename | 如果 filename为符号链接,则为真 |
5 | -r filename | 如果 filename可读,则为真 |
6 | -w filename | 如果 filename可写,则为真 |
7 | -x filename | 如果 filename可执行,则为真 |
8 | -s filename | 如果文件长度不为0,则为真 |
9 | -h filename | 如果文件是软链接,则为真 |
10 | filename1 -nt filename2 | 如果 filename1比 filename2新,则为真 |
11 | filename1 -ot filename2 | 如果 filename1比 filename2旧,则为真 |
2、整数变量表达式
序号 | 参数 | 说明 |
1 | -eq | 等于 |
2 | -ne | 不等于 |
3 | -gt | 大于 |
4 | -ge | 大于等于 |
5 | -lt | 小于 |
6 | -le | 小于等于 |
3、字符串变量表达式
序号 | 参数 | 说明 |
1 | $a = $b | 如果string1等于string2,则为真 |
2 | $string1 != $string2 | 如果string1不等于string2,则为真 |
3 | -n $string | 如果string 非空(非0),返回0(true) |
4 | -z $string | 如果string 为空,则为真 |
5 | $string | 如果string 非空,返回0 (和-n类似) |
6 | ! 表达式 | 条件表达式的相反[逻辑非] |
7 | 表达式1 –a 表达式2 | 条件表达式的并列[逻辑与] |
8 | 表达式1 –o 表达式2 | 条件表达式的或[逻辑或] |
样例:
[ -z "$pid" ] 单对中括号变量必须要加双引号
[[ -z $pid ]] 双对括号,变量不用加双引号
4、特殊变量
序号 | 参数 | 说明 |
1 | $0 | 当前脚本的文件名 |
2 | $n | 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是1 |
3 | $# | 传递给脚本或函数的参数个数 |
4 | $* | 传递给脚本或函数的所有参数 |
5 | $@ | 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同 |
6 | $? | 上个命令的退出状态,或函数的返回值 |
7 | $$ | 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID |
8 | $! | Shell最后运行的后台Process的PID(后台运行的最后一个进程的进程ID号) |
参考:Linux的shell中 if 的-e,-d,-f的说明
Linux shell脚本中if的“-e,-d,-f” 说明相关推荐
- linux shell脚本字符串连接符,学习Linux shell脚本中连接字符串的方法
这篇文章主要介绍了Linux shell脚本中连接字符串的方法,如果想要在变量后面添加一个字符,可以用一下方法: 代码如下: $value1=home $value2=${value1}"= ...
- Linux Shell脚本中压缩包解压到目标目录下
在Linux Shell脚本中,把一个压缩文件解压到目标目录下,使用如下代码: tar -xvf server.tar -C /opt/ 上述命令实现了把当前目录下的server.tar的压缩包,解压 ...
- Linux Shell - 脚本中自动确认需要输入确认的命令
文章目录 Linux Shell - 脚本中自动确认需要输入确认的命令 1.yum 命令 2.其它命令 Linux Shell - 脚本中自动确认需要输入确认的命令 1.yum 命令 通过指定 -y ...
- linux脚本用户输入,如何在Linux shell脚本中提示用户输入
本篇文章给大家介绍关于如何在Linux shell脚本中提示用户输入?下面来看具体的内容. 我们首先来看一下命令# read var # read -s "Waiting for input ...
- Linux shell脚本中的命令正确写法
shell脚本中的命令需加反引号``
- Linux shell脚本中分号的作用
日常工作中有时候会需要用到shell脚本来简化重复性工作. 然后每次都迷惑在什么地方改用分号,什么地方不用.好吧今天,来个了断吧. 首先我的需求是,判断有没有指定目录,如果没有则git clone 一 ...
- linux shell alias,Linux shell脚本中使用alias定义的别名
核心知识点 shopt 开启和关闭 alias 扩展 交付模式默认是开启的,脚本的默认是关闭的 alais 扩展的名称是 expand_aliases alias 定义 在当前session中,可以直 ...
- linux shell脚本中调用另一个shell脚本
先来说一下主要以下有几种方式: 1.fork: 如果脚本有执行权限的话,path/to/foo.sh.如果没有,sh path/to/foo.sh. 2.exec: exec path/to/foo. ...
- Linux shell脚本中如何读取跟shell脚本同一目录下的配置文件
2019独角兽企业重金招聘Python工程师标准>>> 配置文件如下 ##########BACKUP MYSQL CONFIG####### #database name db_n ...
最新文章
- 同步方法和同步代码块
- Codeforces 911F Tree Destruction
- 面向对象回顾(静态变量、类加载机制/双亲委派模型、Object类的方法、类和对象区别)
- 2019数据安装勾选_万能的XY数据标签插件,柱形图也可以呈现变化率
- 【2019牛客暑期多校训练营(第一场) - H】XOR(线性基,期望的线性性)
- Judy alpha 第七天
- 如果能够让出资人了解更多的c++项目进程
- java windows linux 乱码_Linux 中 Windows 中文乱码
- LeetCode(657)——机器人能否返回原点(JavaScript)
- seay代码审计mysql插件报错_Seay源代码审计系统v2.0源码
- Internet Download Manager 6.32.6 V2 下载工具
- linux路由器压力测试,Apache Bench Web 压力测试
- 入侵无盘系统服务器,比有盘还快!梅捷带你体验锐起无盘系统
- java自行车销售系统_基于 javaee 自行车租赁系统,源码分享
- ActiveMQ使用教程
- e算量总是不自动计算机,E算量疑难杂症解决方法.doc
- 视频教程-【国内首套H3C V7交换机实战课程-2】以太网端口和链路聚合配置与管理-H3C认证
- android 实现qq动画,Android实现仿QQ登录界面背景动画效果
- 浅谈领域驱动设计(DDD:Domain-Driven Design)
- 清越光电科创板IPO过会:年营收6.9亿 高新创投是股东