shell脚本编程基础

条件选择:if语句

选择执行:

注意:if语句可嵌套

单分支

if(开头)判断条件;then
条件为真的分支代码 
fi(结尾)

双分支

if(开头)判断条件;then
条件为真的分支代码 
else:其他
条件为假的分支代码 
fi(结尾)

多分支

输入年龄显示相对应设置的shell脚本:

read -p "Please input yourage: " AGE
if [[ ! $AGE =~ ^[0-9]+$ ]];then
echo "$AGE is not a digit"
exit
elif [ $AGE -lt 18 ];then
echo "study hard"
elif [ $AGE -lt 60 ];then
echo "work hard"
elif [$AGE -lt 150 ]:then
echo "enjoy life"
else
echo "welcome to earth"
fi

条件判断:case语句

举个栗子:输入1-9,反馈(1、3、5)(2、4、6)(7、8、9) ,除此之外,如输入1-9以外的数字,则反馈other。

case$1 in

1|3|5)

    echo 1,3,5

    ;;

2|4|6

    echo 2,4,6

    ;;

7|8|9

    echo 7,8,9

    ;;

*)

    echo other

esac

编辑配置文件生效

修改profile和bashrc文件后需生效

两种方法:

1、重新启动shell进程
2、. 或者source
例:.~/. bashrc


$变量

echo $-  :显示 himBH

h:hashall,打开此选项后,Shall会将命令所在的路径hash下来,避免每次都要查询。通过set +h将h选项关闭,set -h开启选项。

  • i:interactive-comments,包括

  • B 花括号扩展

  • H  history 历史命令,H选项打开,可以展开历史列表中的命令,可以通过!感叹号来完成,例如“!!”返回最近的一个命令, “!n”返回第n个历史命令

脚本安全

set 命令

    • -u 在扩展一个没有设置的变量时,显示错误信息
      等同set –o nounset
    • -e 如果一个命令返回一个非0退出状态值(失败)就退出
      等同set –o errexit

linux基础—课堂随笔_03 SHELL脚本编程基础的更多相关文章

  1. Linux思维导图之shell脚本编程基础、习题

    思维导图百度云分享:链接:https://pan.baidu.com/s/1UMvudlv-xEG_pFtOPdCWhg密码:x6oa 路径:     外部命令脚本执行需在路下,cp到路径某个路径下或 ...

  2. Linux shell脚本编程基础之练习篇

    shell脚本编程基础之练习篇. 1.编写一个脚本使我们在写一个脚本时自动生成”#!/bin/bash”这一行和注释信息. #!/bin/bash ] then echo "请输入一个参数& ...

  3. SHELL脚本编程基础知识

    SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...

  4. shell脚本编程基础介绍

    Linux系统——shell脚本编程基础介绍 1.什么是shell 它是一个命令解释器,在linux/unix操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种操作输出的结果 ...

  5. 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---57

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  6. Linux Shell脚本编程-基础1

    概述:  shell脚本在Linux系统管理员的运维工作中非常重要.shell脚本能够帮助我们很方便的管理服务器,因为我们可以指定一个任务计划,定时的去执行某一个脚本以满足我们的需求.本篇将从编程基础 ...

  7. shell脚本编程基础

       最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础    shell脚本是利用shell的功能 ...

  8. Linux Shell脚本编程基础(11)

    实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核,不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序.Shel编程语言具有普通编程 ...

  9. Linux基础篇–shell脚本编程基础

    本章内容概要  编程基础  脚本基本格式  变量  运算  条件测试  配置用户环境 7.1 编程基础程序:指令+数据程序编程风格:   过程式:以指令为中心,数据服务于指令   对象式:以数据为中心 ...

随机推荐

  1. BN和L2 NORM的区别

    bn是拉平各个feature的差异,而l2 norm是拉平各个样本的差异,本来各个样本的模长千变万化,按照距离的概念,差别是很大的,但是l2 norm后,距离就变得有一个上界了,显然样本间差异变小了. ...

  2. mgo连接池

    package main import ( "log" "sync" "time" "gopkg.in/mgo.v2" ...

  3. ParallelForTransform作业

    ParallelForTransform作业是另一种ParallelFor作业 ; 专为在变形上操作而设计. 注意:ParallelForTransform作业是Unity中用于实现IJobParal ...

  4. Django 1.x版本与2.x版本 区别

    django 1.x版本与2.x版本 URL区别 在django 1.x中的方式 导入的模块是'from django.conf.urls import url',urlpatterns中url对应的 ...

  5. 【CSS】如何在一个页面中引入样式css

    CSS(Cascading Style Sheet)又叫层叠样式表.是我们学习前端必不可少的一门语言,学习它其实就是为了学会如何去更改页面标签的样式.目前使用最广的是css3,但同样的,他是从css2 ...

  6. 【jQuery】attr()、prop()、css() 的区别(转载)

    .attr( ) 可以设置元素的属性(也就是给元素新增加一个原来并不存在的属性)也可以获取元素的本来就有的属性以及额外设置的属性.如果要获取的属性没有设置,那么获取到的结果是 undefined; . ...

  7. 解决windows server 2019远程桌面许可证问题

    解决远程桌面许可证问题,你的远程桌面许可证出现问题,你的会话将在60分钟后断开. 最近装了台windows server 2019服务器做远程桌面连接,也安装了远程桌面许可证,但客户端远程连接时出现你 ...

  8. mysql innodb索引原理

    聚集索引(clustered index) innodb存储引擎表是索引组织表,表中数据按照主键顺序存放.其聚集索引就是按照每张表的主键顺序构造一颗B+树,其叶子结点中存放的就是整张表的行记录数据,这 ...

  9. 小记--------spark的Master主备切换机制原理分析及源码分析

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABfEAAAJwCAYAAAAp7ysfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjw

  10. 1-python django的创建

    一.Virtualenv(我的python环境是3.7) 1.虚拟环境创建(针对python版本和django的版本不一致的) 输入 pip install virtuallenv ,看到如下信息就是 ...