Linux入门day9

Shell 编程

why

1.linux运维工程师在进行服务器集群管理时候需要编写shell程序来进行服务器管理

2.java 和 python 程序员来说 需要写一些shell脚本来进行程序或者服务器的维护

3.大数据程序员写shell来管理群集

what

shell 是一个命令解释器,li它为linux内核发送请求以便运行程序的界面系统程序,用户可以用shell来启动甚至停止一个程序。

Linux入门day9

 Shell 的执行方式

1.脚本必须以#!/bin/bash开头

2.脚本必须要有执行权限

编写第一个shell脚本

创建一个shell 输出 helloworld

第一步当然是vim 一个shell 文件 (文件的结尾要是.sh)

Linux入门day9

脚本有两种执行方式,第一种是输出脚本的相对路径或者绝对路径都可以

比如./xxx.sh

不过在这种情况下必须要给权限,chmod u+x +shell名字

第二种方式是 sh xxx.sh

不用给权限直接开

Linux入门day9

 shell 变量

linux shell 里有两种变量用户变量 和系统变量

系统变量 $HOME $PWD $SHELL

可以用set调出来所有的系统变量

shell 变量的定义

定义变量 : 变量名字=值

撤销变量 unset 变量

声明静态变量 :readonly 注意不能unset

Linux入门day9

 

Linux入门day9

看出来有提示不能撤回这个静态变量

ps :变量名一般为大写

A=`date`(表示把date的本身付给A)

也可以写成A=$(date)

A=date 没有反引号的话就是把date这个单词赋给A

单行注释用#

或多行注释 :<<!

位置参数的设置

这里的位置参数简而言之就是把输入放在.sh后面

如xxx.sh 100 200

$n n为数字 $0表示命令本身1-9是第1-9个参数10个以上的大括号包含如${10}

S*代表所有参数看成一个整体

$@ 把变量的所有的值分开看

Linux入门day9

Linux入门day9

 

基本运算

$((运算))或者$[]

或者 expr m+n

Linux入门day9

条件判断

判断语句

[ conditon ] (前后都有空格不然报错)

实例

[ sd ] 随便啥都行 都会返回 true

[  ] 返回false

判断语句

=字符串比较

整数比较

-lt 小于

-le 小于等于

-eq 等于

-gt 大于

-ge 大于等于

-ne 不等于

Linux入门day9

Linux入门day9 

Linux入门day9

60分及格(elif也可以用)

记得用fi结尾

 

case 语句一可以用但是要注意

每个case 后都用;;

"值1”)

如果变量值是1则执行程序1

;;

“值2”)

如果变量值是2则执行2

;;

*) 省略其他 除去12都是

esac 结束语句

Linux入门day9Linux入门day9

 

 

 

 

 

 

 

 

上一篇:JavaWeb入门day9-随笔(session/cookie)


下一篇:如何为Dash/Zeal生成c++ 文档: 以abseil文档为例