当前位置: 首页 > 编程笔记 >

bash脚本中if语句的使用方法

姬高澹
2023-03-14
本文向大家介绍bash脚本中if语句的使用方法,包括了bash脚本中if语句的使用方法的使用技巧和注意事项,需要的朋友参考一下

除了 "if,else" 形式之外,还有其它形式的 "if" 语句:

if [ condition ]
then 
action
fi

只有当 condition 为真时,该语句才执行操作,否则不执行操作,并继续执行 "fi" 之后的任何行。

if [ condition ]
then 
action
elif [ condition2 ]
then 
action2
.
.
.
elif [ condition3 ]
then 
else
actionx
fi

以上 "elif" 形式将连续测试每个条件,并执行符合第一个 真 条件的操作。如果没有条件为真,则将执行 "else" 操作,如果有一个条件为真,则继续执行整个 "if,elif,else" 语句之后的行。

接收自变量

在 介绍性文章 中的样本程序中,我们使用环境变量 "$1" 来引用第一个命令行自变量。类似地,可以使用 "$2"、"$3" 等来引用传递给脚本的第二和第三个自变量。这里有一个例子:

 #!/usr/bin/env bash
echo name of script is $0
echo first argument is $1
echo second argument is $2
echo seventeenth argument is $17
echo number of arguments is $#

除以下两个细节之外,此例无需说明。第一,"$0" 将扩展成从命令行调用的脚本名称,"$#" 将扩展成传递给脚本的自变量数目。试验以上脚本,通过传递不同类型的命令行自变量来了解其工作原理。

有时需要一次引用 所有 命令行自变量。针对这种用途,bash 实现了变量 "$@",它扩展成所有用空格分开的命令行参数。在本文稍后的 "for" 循环部分中,您将看到使用该变量的例子。

 类似资料:
  • 问题内容: i=0 for f in do echo “i value is $i” if [“$i” = “0”] then echo “here” i=$((i+1)) continue fi arr[i]=$f i=$((i+1)) done 在上面的bash脚本中,我在使用if语句时出现了一个错误,它看起来像这样 请指出我的错误。 问题答案: 采用 在bash,你需要周围的空间,并在条件

  • 我能用这样的东西吗?这怎么可能? 或

  • 我试图检查一个进程(假设它被称为some_进程)是否正在服务器上运行。如果是,则回显1,否则回显0。 这是我正在使用的命令,但它只能部分工作(更多信息见下文)。注意,我需要在一行中编写脚本。 注:某些过程中的是为了防止grep自身返回。 如果某个_进程正在运行,则会回显“1”,这很好。但是,如果某个_进程未运行,则不会产生任何回声。

  • 我在这里做错了什么? 尝试匹配任何包含空格、小写、大写或数字的字符串。特殊字符也很好,但我认为这需要转义某些字符。 这显然只测试上限、下限、数字和空格。但不管用。 *更新*

  • 我试图通过这段代码来展示我对Python的基础知识的了解,并且它可以工作: 我还想通过这段代码展示我对Java基础知识的了解,但它不起作用: 我很困惑,因为这一个确实有效: 你们知道怎么了吗?

  • 本文向大家介绍详解Lua中的if语句的使用方法,包括了详解Lua中的if语句的使用方法的使用技巧和注意事项,需要的朋友参考一下  if语句由一个或多个语句组成一个布尔表达式。 语法 Lua编程语言的if语句语法是: 如果布尔表达式的计算结果为代码的if语句为true,那么块将被执行。如果if语句的末尾(右大括号后)布尔表达式计算为false,那么第一组代码将被执行。 Lua程序设计语言假定布尔tr