美文网首页
简单语法

简单语法

作者: ifeelok0319 | 来源:发表于2017-06-08 20:56 被阅读4次

判断

最简单的判断逻辑是:

if [ condition1 ]; then
   statement1
elif [ condition2 ]; then
  statement2
else
  statement3
fi
# 或者用test
if test condition1 ; then
   statement1
fi

注意:condition两边与[]之间必须至少有一个空格

判断条件

shell中判断条件不同于其他语言中的<,>,==,<=,>=那么直接,常见的有下列几种:

-eq  等于(==)
-ne  不等于(!=)
-gt  大于(\>)
-lt  小于(\<)
-le  小于等于
-ge  大于等于
-z  空串
-n  非空串
==  两个字符相等
!=  两个字符不等

组合判断

-a 且
-o 或

特殊用法[[ ... ]]

字符串比较时可以把右边的作为一个模式,而不仅仅是一个字符串,比如[[ hello == hell? ]]结果为真&&、||、<和> 操作符能够正常存在于[[ ]]条件判断结构中,但是如果出现在[ ]结构中的话,会报错。比如可以直接使用if [[ $a != 1 && $a <= 5 ]],如果不使用双括号, 则为if [ $a -ne 1] && [ $a -le 5 ]或者if [ $a -ne 1 -a $a -le 5 ]

文件的判断

-f   判断后面是否为一个文件
-d   判断后面是否为一个目录
-e   判断后面对应的文件是否存在
-s   判断文件是否存在且不为空

switch case

case "$Variable" in
  # 列出需要匹配的字符串
  0) echo "There is a zero.";;
  1) echo "There is a one.";;
  *) echo "It is not null.";;
esac

循环

for 循环

# {1..3} == `seq 1 3`
for Variable in {1..3}
do
  echo "$Variable"
done

或传统的"for循环",但需要加两层括号(两层的小括号内可以写C语言中的语句):

for ((a=1; a <= 3; a++))
do
  echo $a
done

在其他命令的结果上执行for循环:

for Output in $(ls)
do
  cat "$Output"
done

while 循环

while [ condition ]
do
  echo "loop body here..."
  break
done

命令行

$#   命令行参数个数
$0   当前脚本名
$n   第n个参数值,n可取1,2,3...
$@   所有命令行参数
$?   上一个命令的返回值

相关文章

  • 第一次markdown

    #markdown的语法据说很简单 ##markdown的语法据说很简单 ###markdown的语法据说很简单 ...

  • 简单语法

    单片机原理     单片机就是通过编写的程序达到人们想控制的动作,其原理是在控制电平的高低,从而控制电子元器件工作...

  • 简单语法

    判断 最简单的判断逻辑是: 注意:condition两边与[]之间必须至少有一个空格 判断条件 shell中判断条...

  • 简单语法

    1.一个简单的输出语句:输出命令为print("需要输出的内容")

  • 2019-04-01 markdow的简单语法

    markdow的简单语法

  • Markdown语法介绍1:标题写法及字体格式

    Markdown语法简单,写法简单,入门也非常简单,下面是Markdown的语法,一起来学习吧! 1.标题的写法:...

  • 王垠批评 golang

    对 Go 语言的综合评价 语法: 类型定义需要很多 “眼球 parse” 语法: switch 语法为了显得简单,...

  • markdown简单语法

    标题? 一级标题 # 二级标题 ## 三级标题 ### 四级标题 #### 五级标题 ##### 六级标题 ###...

  • markdown简单语法

    一级标题 二级标题 三级标题 文本1 文本2 文本3 1.文本12.文本23.文本3 简书 一盏灯, 一片昏黄; ...

  • 简单语法(一)

    嗨,大家好。我是小石,关于英语相信有很多同学们总是搞不懂英语语法,总觉得它很难,老是学不会。其实它并没有那么难。在...

网友评论

      本文标题:简单语法

      本文链接:https://www.haomeiwen.com/subject/suitqxtx.html