Shell脚本编程基础中() (()) [ ] [[ ]] 的使用

Shell脚本编程基础中() (()) [ ] [[ ]] 的使用

()

生成子进程,括号内的命令将会在子进程中运行,父进程不能够读取在子进程中创建的变量

例:

新建个脚本文件,写入

1

则执行结果为

2

$()相当于 ` `  ,返回括号内命令执行结果

3

(( ))

用作四则运算和逻辑运算,并且支持多个表达式

例:

4

当 (( )) 加$,则是将获得表达式值,赋值给左边变量

5

逻辑运算

6

[ ] 和 [[ ]]

用作四则运算时 [ ] 和 [[ ]] 用法相同

用作逻辑运算时中括号内前后需要加空格

7

在进行逻辑运算时,它们基本用法相同,但[[ ]] 可以支持通配符和扩展正则表达式

8

这个例子中*是作为通配符,表示te后可以有0个或多个任意字符

9

此例中用到的是扩展正则表达式,匹配的是e前面最多一个字符,e后边可以有0个或任意多个字符,并且以 .sh 结尾的字符串

需要注意的是:其中的通配符和扩展正则表达式不能使用“ ”

10

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88904

(0)
oranixoranix
上一篇 2017-11-26
下一篇 2017-11-26

相关推荐

  • 再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

    随着Linux程序的增多,软件的安装过程中经常出现如下问题: 1、硬件配置类似或者相同时,批量安装系统和软件,希望实现自动化安装,减少安装时间和人为出错。 2、工程实施人员在不同客户现场进行系统和软件安装(硬件配置不同),由于硬件有差别,不容易实现自动化。 笔者针对以上场景,从提高生产效率,减少误操作的立场,提出如下解决方案,希望能达到抛砖引玉的目的,并能与…

    系统运维 2016-07-16
  • bind的安装实现

    首先介绍一下我的测试环境:centos 7+入网(为了试行一下自己的安装文档,才装的虚拟机) 1> yum install bind bind-chroot -y     因为刚刚安装的虚拟机,这里我就不检查了; 2>vim named.conf [root@localhost named]# cat /e…

    Linux干货 2016-03-20
  • 条件判断if、case与文件查找locate、find及相关练习

    一、条件选择 1、if:按条件执行脚本中的内容,可以使用嵌套结构,有单分支、双分支和多分支结构,每个条件中可以有不止一条语句,如果有多条语句,可以用and(-a)或or(-o)连接在一起,但不能使用&&或||: if COMMANDS; then     COMMANDS;   &n…

    Linux干货 2016-08-18
  • Openssl搭建私有CA认证

    概述 CA英文全称Certification Authority,即数字证书认机构。从广义上来说,CA是负责发放和管理数字证书的权威机构,并作为用户数字认证中受信任的第三方,承担公钥体系(PKI)中公钥的合法性检验的责任,在互联网上,实现用户与用户、用户与企业之间的数字身份认证。 本文通过使用openssl进行搭建私有CA认证体系,从而简单地了解CA的认证过…

    Linux干货 2016-09-22
  • bash 的过程式和循环式的编写

           bash脚本的编写,对于Linux这个多用户,多任务的系统,有很大的帮助,脚本可以帮助我们定时执行任务,过滤文本,检查系统性能等等。下面我们来了解一下过程式和循环式脚本的编写。 使用read 命令来接受输入 使用read 来把输入值分配给一个或多个shell 变量:  &nb…

    Linux干货 2016-08-24
  • 进程管理工具

    进程管理工具 kill man 7 signal 1) SIGHUP: 无须关闭进程而让其重读配置文件 kill -1 进程编号 2) SIGINT: 中止正在运行的进程;相当于Ctrl+c 9) SIGKILL: 杀死正在运行的进程 再生进程 kill -9 杀不掉 15) SIGTERM:终止正在运行的进程 kill -15/或不写(默认) +进程编号。…

    Linux干货 2016-09-11