示例脚本及注释


#!/bin/bash var=$1 # 将脚本的第一个参数赋值给变量var if test $var # test - check file types and compare values
then
if [ $var == "right" ];then # “[]”是调用test命令的一种形式,"[]"两边必须加空格;
echo "Right!"
elif test $var = "wrong";then # 比较字符串时,“=”等价与“==”,两边必须加空格;
echo "Wrong!"
else
echo "Nothing!"
fi
else
echo "No arguments!"
fi # ### if/else流程控制
# - elif语句和else语句是非必须语句,根据需要添加;
# - 条件下的执行体不能为空;
#
#
# ### test命令
# - Shell中的test命令用于检查某个条件是否成立,可以进行数值、字符和文件的测试
# - 通常用“[]”来表示条件测试。使用"[]"时,两边必须加空格;
# - 通过man命令获取test命令的详细信息;
# 0)常用
# [ -f somefile ] :判断是否是一个文件
# [ -x /bin/ls ] :判断/bin/ls是否存在并有可执行权限
# [ -n $var ] :判断$var变量是否有值
# [ $a = $b ] :判断$a和$b是否相等
# 1)判断表达式
# if test (表达式为真)
# if test !表达式为假
# test 表达式1 –a 表达式2 两个表达式都为真
# test 表达式1 –o 表达式2 两个表达式有一个为真
# 2)判断字符串
# test –n 字符串 字符串的长度非零
# test –z 字符串 字符串的长度为零
# test 字符串1=字符串2 字符串相等
# test 字符串1!=字符串2 字符串不等
# 3)判断整数
# test 整数1 –eq 整数2 整数相等
# test 整数1 –ge 整数2 整数1大于等于整数2
# test 整数1 –gt 整数2 整数1大于整数2
# test 整数1 –le 整数2 整数1小于等于整数2
# test 整数1 –lt 整数2 整数1小于整数2
# test 整数1 –ne 整数2 整数1不等于整数2
# 4)判断文件
# test File1 –ef File2 两个文件具有同样的设备号和i结点号
# test File1 –nt File2 文件1比文件2 新
# test File1 –ot File2 文件1比文件2 旧
# test –b File 文件存在并且是块设备文件
# test –c File 文件存在并且是字符设备文件
# test –d File 文件存在并且是目录
# test –e File 文件存在
# test –f File 文件存在并且是正规文件
# test –g File 文件存在并且是设置了组ID
# test –G File 文件存在并且属于有效组ID
# test –h File 文件存在并且是一个符号链接(同-L)
# test –k File 文件存在并且设置了sticky位
# test –b File 文件存在并且是块设备文件
# test –L File 文件存在并且是一个符号链接(同-h)
# test –o File 文件存在并且属于有效用户ID
# test –p File 文件存在并且是一个命名管道
# test –r File 文件存在并且可读
# test –s File 文件存在并且是一个套接字
# test –t FD 文件描述符是在一个终端打开的
#
#
# ### “[]”与test命令
# - 实际上“[]”是调用test命令的一种形式;
# - 左中括号“[”是系统的一个内置命令,存在路径是“/bin/[”,是调用test命令的标识;
# - 右中括号“]”是关闭条件判断的标识;

Shell - 简明Shell入门04 - 判断语句(If)的更多相关文章

  1. Shell - 简明Shell入门

    本文以示例和注释的方式,对Shell编程的基本知识点进行了总结和回顾,所有脚本均已做了基本的调试和验证. Shell - 简明Shell入门 01 - 第一个脚本 脚本的定义.执行方法以及echo命令 ...

  2. shell编程基础(3)条件判断语句

    1,带参数的shellscript #this is program build 5.11 to test shell script ############ cxz ####### 5.11 ### ...

  3. Shell - 简明Shell入门01 - 第一个脚本(HelloShell)

    示例脚本及注释 #!/bin/bash echo "hello shell!" # 打印字符串"hello shell!" echo "Date: & ...

  4. Shell - 简明Shell编程

    本文是对Shell脚本编程的总结和回顾,所有涉及的脚本均已做了基本的调试和验证. [toc] 测试环境信息 [root@CentOS7 ~]# uname -a Linux CentOS7 3.10. ...

  5. Linux - 简明Shell编程04 - 判断语句(If)

    脚本地址 https://github.com/anliven/L-Shell/tree/master/Shell-Basics 示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一 ...

  6. Shell - 简明Shell入门05 - 条件语句(Case)

    示例脚本及注释 #!/bin/bash var=$1 # 将脚本的第一个参数赋值给变量var case $var in right) echo "Right!";; wrong) ...

  7. Shell - 简明Shell入门06 - 循环语句(Loop)

    示例脚本及注释 #!/bin/bash # for循环 for filename in t1 t2 t3 do touch $filename.txt echo "Create new fi ...

  8. Shell - 简明Shell入门13 - 用户输入(UserInput)

    示例脚本及注释 1 - arguments #!/bin/bash if [ -n "$1" ];then # 验证参数是否传入 echo "The first para ...

  9. Shell - 简明Shell入门14 - 操作符(Operator)

    示例脚本及注释 #!/bin/bash echo "No code, just some comments." # ### 通配符 # * 代表任意(0个或多个)字符 # ? 代表 ...

随机推荐

  1. centos7 hbase 搭建笔记

    1.require:java环境,本地可用的hadoop 2.拷贝hbase文件(hive-1.2.6) 3.设置环境变量 export HBASE_HOME=/data/spark/bin/hbas ...

  2. Python开课复习-10/10

    1. 什么时匿名函数def 定义 的是有名函数:特点是可以通过名字重复调用 def func(): #func = 函数的内存地址 pass匿名函数就是没有名字的函数:特点是只能在定义时使用一次 2. ...

  3. 2018.10.24 bzoj3195: [Jxoi2012]奇怪的道路(状压dp)

    传送门 f[i][j][k]f[i][j][k]f[i][j][k]表示前iii个点连了jjj条边,第i−K+1i-K+1i−K+1~iii个点连边数的奇偶性为kkk时的方案数. 转移规定只能从后向前 ...

  4. SPRING 集成 activemq 的 topic 模式

    概要 activemq 支持两种模式: 1.队列模式 2. 发布订阅者模式,topic有一个主题可以有多个订阅者.这种情况可以将一个消息,分发到多个消费者. 比如我有这样一个案例,用户需要同步,而且需 ...

  5. 启动tomcat报错Caused by: java.io.FileNotFoundException: class path resource [io/renren/controller/NodeDataController] cannot be opened because it does not exist

    ?? 清理项目,再重启服务就好了.........

  6. oracle死锁解决方法

    select SESS.sid, SESS.SERIAL#, LO.ORACLE_USERNAME, LO.OS_USER_NAME,      AO.OBJECT_NAME, LO.LOCKED_M ...

  7. Java潜在的坑持续总结

    1.Java里如果有if (foo == 0),如果foo是null这里居然是会抛NPE异常而不是返回false: 2.Java里整形数值不能用==来比较,因为只有区间是[-128,127]的才能这么 ...

  8. centos7,系统目录结构

    LINUX有四种基本文件系统类型 普通文件: 如文本文件.C语言元代码.SHELL脚本.二进制的可执行文件等,可用cat.less.more.vi.emacs来察看内容,用mv来改名. 目录文件: 包 ...

  9. Javascript 需要注意的细节

    1.使用 === 代替 ==JavaScript 使用2种不同的等值运算符:===|!== 和 ==|!=,在比较操作中使用前者是最佳实践.“如果两边的操作数具有相同的类型和值,===返回true,! ...

  10. 添加全局函数$.extend和对象方法$.fn

    ## $(function () { $.fn.shadow = function (opts) { return this.each(function () { var defaults = { / ...