前言

简单介绍一下语法。

正文

数组:

定义数组:

IPTS =(10.0.0.1 10.0.0.2 10.0.0.3)

显示所以数组元素:

echo ${IPTS[@]}

显示数组元素的个数

echo ${#IPTS[@]}

显示第一个元素:

echo ${IPTS[0]}

转义和引用:

特殊字符:

注释

; 分号 分割两行命令

\ 转义字符

"' 引号

转义符合:

单个字符前的转义符合:

\n\r\t 单个字母转义

$ 、"、 \ 单个非字母的转义

引用符号:

常用的引用符号:

"" 双引号

' 单引号

` 反引号

单引号和双引号在显示的时候还是不一样的。

` 反引号 可以用来执行命令。

赋值运算符:

算术运算符:

+-*/**%

使用expr 进行运算

expr 4 + 5 只能支持整数,4和+和5之间要有空格

数字常量:

let "变量名=变量值"

支持8进制和16进制

双圆括号:

((a=10))

((a++))

echo $((10+20))

if

if-then 基本用法:

if [测试条件成立] 或者 命令返回值为0

then 执行相应的命令

fi 结束

同样有了if-then,那么还可以使用if then else 这样的语句。

if-then-else 语句可以在条件不成立也运行相应的命令。

格式为:

if [测试 成立条件]

then 执行相应命令

else 测试条件不成立,执行相应命令

fi 结束

还可以使用:

if [测试 成立条件]

then 执行相应命令

else if [测试成立条件]

then 执行相应命令

else 测试条件不成立,执行相应命令

fi 结束

case

case 值 in

模式1)

command1

command2

...

commandN

;;

模式2)

command1

command2

...

commandN

;;

esac

循环

for 说明:

for file in $(ls .gz); do gunzip -c $file > ${file%%.} ;done

同样可以使用c语言风格的,比如说:

for ((i=1; i<=10;i++)); do command;done

这样的也可以。

while 说明:

while test测试一直成立

do

command

done

另外一种就是utile,就是和while 相反,while 是一直是真的时候执行,utile一直是假的时候执行。

util test测试一直成立

do

command

done

同样循环中有continue和break,和其他语言一样就不介绍了。

下一节特殊字符。

重新点亮shell————语法[四]的更多相关文章

  1. Python 基础语法(四)

    Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...

  2. shell第四篇(上)

    第四篇了解Shell 命令执行流程图 {网中人大哥推荐参考Learning the Bash Shell, 2nd Edition,第 178页:中文版229页} Shell 从标准输入或脚本中读取的 ...

  3. shell 编程四剑客简介 find sed grep awk(微信公众号摘抄)

    一,Shell编程四剑客之Find 通过如上基础语法的学习,读者对Shell编程有了更近一步的理解,Shell编程不再是简单命令的堆积,而是演变成了各种特殊的语句.各种语法.编程工具.各种命令的集合. ...

  4. Shell编程四剑客包括:find、sed、grep、awk

    一.Shell编程四剑客之Find Find工具主要用于操作系统文件.目录的查找,其语法参数格式为: find path -option [ -print ] [ -exec -ok command ...

  5. makefile中的shell语法

    在Makefile中写shell代码有点诡异,和不同的shell语法不太一样,如果不了解,看Makefile会莫名其妙.下面总结了一些. 1:尽在Makefile文件的目标项冒号后的另起一行的代码才是 ...

  6. Pocket英语语法---四、should的同义词是谁

    Pocket英语语法---四.should的同义词是谁 一.总结 一句话总结:should表示劝告,建议,命令,其同义词是ought to,should强调主观看法,ought to强调客观要求.在疑 ...

  7. Hadoop学习笔记之HBase Shell语法练习

    Hadoop学习笔记之HBase Shell语法练习 作者:hugengyong 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令 ...

  8. Shell语法规范

    ver:1.0 博客:https://www.cnblogs.com/Rohn 本文介绍了Shell编程的一些语法规范,主要参考依据为谷歌的Shell语法风格. 目录 背景 使用哪一种Shell 什么 ...

  9. shell语法习题练习进阶版

    第4章 shell语法深度习题练习 4.1 使用if,case,函数的方法将服务改成system(centos6) 4.1.1 if方法 4.1.1.1 system实现 4.1.1.1.1 编写代码 ...

  10. 读完学会shell语法,shell脚本80%已经学会

    第3章 shell语法讲解 3.1 shell运算讲解 3.1.1 运算符的讲解 3.1.2 shell运算方式的讲解 3.1.2.1 $(())运算 [root@m01 test_init] # a ...

随机推荐

  1. Inertial Explorer Xpress 学习笔记

    KEY WORDS: Coordinate Updates (CUPTs) Zero Velocity Updates (ZUPTs) Google Protocol Buffer (GPB)  是一 ...

  2. Java 多线程------多线程的创建(2),方式一:继承于Thread类

    1 package com.bytezero.threadexer; 2 3 /** 4 * 创建两个分线程,其中一个线程遍历100以内的偶数,另一个线程遍历100以内的奇数 5 * 6 * 7 * ...

  3. centos 目录磁盘使用情况

    最简单的查看方法可以使用ls -ll.ls-lh命令进行查看,当使用ls -ll,会显示成字节大小,而ls- lh会以KB.MB等为单位进行显示,这样比较直观一些.   通过命令du -h –max- ...

  4. vue-helper 点击跳转插件 在 methods里面互相调用函数,会产生两个函数definitions ,然后就回弹出框让你选择,解决方案是加配置

    vue-helper 点击跳转插件 在 methods里面互相调用函数,会产生两个函数definitions ,然后就回弹出框让你选择 原因:换了台电脑,又从新配置下vscode "edit ...

  5. 多线程系列(十九) -Future使用详解

    一.摘要 在前几篇线程系列文章中,我们介绍了线程池的相关技术,任务执行类只需要实现Runnable接口,然后交给线程池,就可以轻松的实现异步执行多个任务的目标,提升程序的执行效率,比如如下异步执行任务 ...

  6. 汽车VR虚拟仿真技术如何加速自动驾驶的发展?

    虚拟现实和虚拟仿真将带领自动驾驶汽车从汽车研发.体验.展厅.销售等各个环节迈入全新时代.2019 年,全球增强现实和虚拟现实市场为168 亿美元,到 2023 年,该市场的未来增长预计将超过 1600 ...

  7. 3DCAT投屏功能升级,助力企业营销与培训

    3DCAT实时渲染云推出以来,深受广大客户的喜爱,3DCAT也一直根据客户的反馈优化我们的产品. 但是这段时间来,不同行业的客户都反馈着同一个问题. 汽车销售顾问:"什么时候支持投屏功能呢, ...

  8. AI助力快速定位数据库难题

    最近很多人都在讨论AI能否替代人类工作的话题,最近笔者正好遇到一个AI帮自己快速定位问题的实例,分享给大家,一起来切身感受下AI对于解决数据库问题的价值吧. 事情的经过是这样,有个朋友咨询我,说他最近 ...

  9. 03.Java数据结构问题

    目录介绍 3.0.0.1 在arrayList中System.arraycopy()和Arrays.copyOf()方法区别联系?System.arraycopy()和Arrays.copyOf()代 ...

  10. 记录--5个知识点,让 Vue3 开发更加丝滑

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 最近鼓捣了一下 Vue3 + Vite2,遇到了不少问题,整理了5个可以提高开发效率的小知识,让你在 Vue3 的项目开发中更加丝滑 ...