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" 循环部分中,您将看到使用该变量的例子。
相关推荐
-
bash脚本中if语句的使用方法
除了 "if,else" 形式之外,还有其它形式的 "if" 语句: 复制代码 代码如下: if [ condition ]then actionfi 只有当 condition 为真时,该语句才执行操作,否则不执行操作,并继续执行 "fi" 之后的任何行. 复制代码 代码如下: if [ condition ]then actionelif [ condition2 ]then action2...elif [ condition3 ]then
-
在Bash脚本中创建和使用数组方法总结
在Bash中定义一个数组 有两种方法可以在bash脚本中创建新数组.第一个是使用declare命令来定义一个Array.此命令将定义名为test_array的关联数组. $ declare -a test_array 还可以通过分配元素来创建数组. $ test_array=(apple orange lemon) 访问数组元素 与其他编程语言类似,bash数组元素可以使用索引号从0开始,然后从1.2.3-n开始访问.这也适用于索引号为数字的关联数组. $ echo ${test_array[0
-
在Bash脚本中引入alias的方法
alias的使用 在日常开发中,为了提高运维效率,我们会用alias(命令别名)来定义命令的简称.比如在~/.bash_profile中添加: alias ll='ls -lrt --color' alias bdebug="go build -gcflags '-N -l'" alias py3='/usr/bin/python3' 执行source ~/.bash_profile之后,这些alias定义便载入到当前终端环境中,我们可以通过alias <cmd>进行查看
-
Linux 在Bash脚本中怎么关闭文件描述符的实例
Linux 在Bash脚本中怎么关闭文件描述符的实例 在写一个Bash脚本的时候碰到一个问题,这个脚本是用来启动一个程序B的,而这个脚本又被另一个程序A调用,结果发现新启动的B进程中有很多A进 程打开的文件描述符(如Socket).因此决定在脚本中将它们关闭,因为为了简单起见,我在A程序中使用了system()来启动该脚本. 增加了关闭文 件描述符的脚本如下: #!/bin/sh cd $(dirname "$0") || exit 1 exec 3>&- exec 4&
-
Oracle在Mybatis中SQL语句的配置方法
数据库中有下划线的字段在实体中应采用驼峰命名法,如P_NAME对应pName,实例如下: 1.XML文件中SQL语句配置(Geteway.xml文件) <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-m
-
Shell脚本中获取进程ID的方法
提问: 我想要知道运行中脚本子shell的进程id.我该如何在shell脚本中得到PID. 当我在执行shell脚本时,它会启动一个叫子shell的进程.作为主shell的子进程,子shell将shell脚本中的命令作为批处理运行(因此称为"批处理进程"). 在某些情况下,你也许想要知道运行中的子shell的PID.这个PID信息可以在不同的情况下使用.比如,你可以使用shell脚本的PID在/tmp下创建一个唯一的临时文件.有时侯脚本需要检测所有运行的进程,它可以从进程列表中排除自身
-
PowerShell 脚本中的密码保存的方法
引言 笔者在<PowerShell 远程执行任务>一文中提到了在脚本中使用用户名和密码的基本方式: $Username = 'xxxx' $Password = 'yyyy' $Pass = ConvertTo-SecureString $Password -AsPlainText -Force $Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$Pass 上面的代码仅仅是能
-
bash 编程中循环语句用法
1.if 是单分支语句,使用格式如下: if condition ; then statement -.. fi 2.if - else 是双分支语句,使用格式如下: if condition ; then statement -. else statement -. fi 3.if -elif-elif-else 是多分支语句,使用格式如下: if condition ; then statement -. elif condition ; then statement -.. elif co
-
Lua中break语句的使用方法详解
当循环中遇到break语句,循环立即终止,程序控制继续下一个循环语句后面. 如果您正在使用嵌套循环(即一个循环里面另一个循环),break 语句将停止最内层循环的执行并开始执行的下一行代码的程序后段. 语法 Lua break语句语法如下: 复制代码 代码如下: break 例子: 复制代码 代码如下: --[ local variable definition --] a = 10--[ while loop execution --] while( a < 20 ) do print
-
linux bash shell中case语句的实例
bash case语句的例子. 分享一段bash shell代码,对于学习bash的同学理解case语句的用法,会有帮助. 例子: 复制代码 代码如下: #!/bin/bash### Program:# File operation# 1.) Open file 2.) Display file 3.) Edit file 4.) Delete file# site: WWW.JB51.NETPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/u
随机推荐
- XCOPY的高级使用:指定日期并且用EXCLUDE排除指定文件
- C# Math.Round()函数问题
- asp.ne去除html的函数代码
- Swift中switch语句区间和元组模式匹配
- javascript模拟map输出与去除重复项的方法
- ASP.NET MVC后台参数验证的几种方式
- 基于Java的代理设计模式
- C语言结构数组实现贪吃蛇小游戏
- Java swing仿酷狗音乐播放器
- 解决Java包装类比较时遇到的问题
- C++中对象的常引用总结
- javascript 跨浏览器的事件系统
- javascript 扫雷游戏
- 通过js为元素添加多项样式,浏览器全兼容写法
- Java实现从jar包中读取指定文件的方法
- JS实现的图片选择顺序切换和循环切换功能示例【测试可用】
- 易语言表格中选择的单元格被改变信息框就弹出提示
- Spring MVC中异常处理的三种方式
- 一次tomcat自动关闭的bug解决
- C#中IDispose接口的实现及为何这么实现详解