linux基础—课堂随笔_03 SHELL脚本编程基础
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脚本编程基础的更多相关文章
- Linux思维导图之shell脚本编程基础、习题
思维导图百度云分享:链接:https://pan.baidu.com/s/1UMvudlv-xEG_pFtOPdCWhg密码:x6oa 路径: 外部命令脚本执行需在路下,cp到路径某个路径下或 ...
- Linux shell脚本编程基础之练习篇
shell脚本编程基础之练习篇. 1.编写一个脚本使我们在写一个脚本时自动生成”#!/bin/bash”这一行和注释信息. #!/bin/bash ] then echo "请输入一个参数& ...
- SHELL脚本编程基础知识
SHELL脚本编程基础知识 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Linux之父Linus有一句话很经典:"Talk is cheap, show me the ...
- shell脚本编程基础介绍
Linux系统——shell脚本编程基础介绍 1.什么是shell 它是一个命令解释器,在linux/unix操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种操作输出的结果 ...
- 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---57
以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:
- Linux Shell脚本编程-基础1
概述: shell脚本在Linux系统管理员的运维工作中非常重要.shell脚本能够帮助我们很方便的管理服务器,因为我们可以指定一个任务计划,定时的去执行某一个脚本以满足我们的需求.本篇将从编程基础 ...
- shell脚本编程基础
最近学习了shell脚本编程,感觉自己的脚本写的不太好,所以想把shell脚本相关的知识系统的整理一下,便于以后的学习和使用. 一.shell脚本基础 shell脚本是利用shell的功能 ...
- Linux Shell脚本编程基础(11)
实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核,不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序.Shel编程语言具有普通编程 ...
- Linux基础篇–shell脚本编程基础
本章内容概要 编程基础 脚本基本格式 变量 运算 条件测试 配置用户环境 7.1 编程基础程序:指令+数据程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心 ...
随机推荐
- BN和L2 NORM的区别
bn是拉平各个feature的差异,而l2 norm是拉平各个样本的差异,本来各个样本的模长千变万化,按照距离的概念,差别是很大的,但是l2 norm后,距离就变得有一个上界了,显然样本间差异变小了. ...
- mgo连接池
package main import ( "log" "sync" "time" "gopkg.in/mgo.v2" ...
- ParallelForTransform作业
ParallelForTransform作业是另一种ParallelFor作业 ; 专为在变形上操作而设计. 注意:ParallelForTransform作业是Unity中用于实现IJobParal ...
- Django 1.x版本与2.x版本 区别
django 1.x版本与2.x版本 URL区别 在django 1.x中的方式 导入的模块是'from django.conf.urls import url',urlpatterns中url对应的 ...
- 【CSS】如何在一个页面中引入样式css
CSS(Cascading Style Sheet)又叫层叠样式表.是我们学习前端必不可少的一门语言,学习它其实就是为了学会如何去更改页面标签的样式.目前使用最广的是css3,但同样的,他是从css2 ...
- 【jQuery】attr()、prop()、css() 的区别(转载)
.attr( ) 可以设置元素的属性(也就是给元素新增加一个原来并不存在的属性)也可以获取元素的本来就有的属性以及额外设置的属性.如果要获取的属性没有设置,那么获取到的结果是 undefined; . ...
- 解决windows server 2019远程桌面许可证问题
解决远程桌面许可证问题,你的远程桌面许可证出现问题,你的会话将在60分钟后断开. 最近装了台windows server 2019服务器做远程桌面连接,也安装了远程桌面许可证,但客户端远程连接时出现你 ...
- mysql innodb索引原理
聚集索引(clustered index) innodb存储引擎表是索引组织表,表中数据按照主键顺序存放.其聚集索引就是按照每张表的主键顺序构造一颗B+树,其叶子结点中存放的就是整张表的行记录数据,这 ...
- 小记--------spark的Master主备切换机制原理分析及源码分析
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABfEAAAJwCAYAAAAp7ysfAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjw
- 1-python django的创建
一.Virtualenv(我的python环境是3.7) 1.虚拟环境创建(针对python版本和django的版本不一致的) 输入 pip install virtuallenv ,看到如下信息就是 ...