美文网首页
day28 shell编程基础入门

day28 shell编程基础入门

作者: 1220 | 来源:发表于2019-04-09 20:53 被阅读0次

1》为什么要学习shell编程?

Linux系统中会大量使用shell,工作中也需要自动化实现业务,

例如:自动备份,监控,自动安装服务。

shell编程是Linux运维人员必须会的编程语言。

shell,Python是运维人员必备的本领。

2》什么是shell?

shell就是一个解释器,命令行的命令以及脚本都会通过shell解释,

传给操作系统,处理后在输出给用户。

3》shell的分类

C7:

的   

shell又包括csh、tcsh两种类型。

4》C7:默认shell

echo $SHELL

5

5》什么是shell脚本?

程序、命令、放入文件执行,这个文件称为shell脚本文件。

工作中最多的是编程写脚本,存放在文件里。

6》shell的变量:

1、全局变量(环境变量)

在整个系统中生效、一般大写、系统中默认存在一些这样的变量,满足系统和程序运行的需求

系统自带的环境变量

[root@Hello ~]# echo $PATH

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

自定义环境变量:

export OLDBOY="I am oldboy."

推荐

推荐把环境变量放入/etc/bashrc

安装Java服务时会配置环境变量

2、局部变量(普通变量)

是编写shell脚本最常用的变量。

变量=值         a=1

变量名:数字、字母、下划线,不能是数字开头

=等号 :赋值符,把什么东西给谁。(不能有空格)

值:东西,变量内容

引号内容的符号:单引号、双引号、反引号、不加引号】

变量可以相加

let  计算命令

7》表达式

 [ 表达式 ]中括号表达式,中括号两端必须要有空格。

字符串要加双引号

[root@oldboyedu ~]# [ "a" = "b" ] && echo 1||echo 0

0

[ "a" = "b" ] && echo 1||echo 0

如果表达式成立,打印1,否则打印0.

[ "a" = "b" ] && echo 1  #跟屁虫。

如果表达式成立,打印1

[ "a" = "b" ] || echo 0  #杠精。

如果表达式成立是假的,打印0

取反:

[ ! "a" = "b" ] && echo 1

1)整数表达式符 两端必须要有空格

2)中括号里面两端必须要有空格。

3)变量和比较的内容,不需要加引号。

说明:

1)字符串要加双引号

例子:

[root@oldboyedu ~]# oldboy="I am oldboy"

[root@oldboyedu ~]# [ -z "$oldboy" ] && echo 1 || echo 0

0

[root@oldboyedu ~]# oldboy=""

[root@oldboyedu ~]# [ -z "$oldboy" ] && echo 1 || echo 0

1

[root@oldboyedu ~]# [ -n "$oldboy" ] && echo 1 || echo 0

0

[root@oldboyedu ~]# [ "test" == "host" ] && echo 1 || echo 0

0

[root@oldboyedu ~]# [ "test" == "test" ] && echo 1 || echo 0

1

整数表达式:

>      -gt       greater than

>=    -ge      greater than or equal

<      -lt       less than

<=    -le      less than or equal

=      -eq     equal

不等于 -ne    not equal

字符表达式:

-z   zero    变量内容长度 为0, 为真(正确)

-n   not zero    变量内容长度 不为0 ,为真

a == a 字符串是否相同

说明:

1)字符串要加双引号。

例子:

1

8.shell判断句:

如果....那么...

如果[ 你是大美女 ]

那么  就和你谈恋爱

否则  拜拜

if  判断句语法:

if [ 表达式 ]

then   命令

fi  


read命令:交互式读取用户输入

-p "提醒:"

-t "多长时间等待输入"

书写脚本习惯:

1、以  .sh   结尾

2、脚本开头第一行 #!/bin/bash 脚本内容由谁解释。

  由于Linux下默认是bash,所以也可以不写这一行。

特殊位置变量:

$1 脚本文件的第一个参数赋值给$1

$2 脚本文件的第二个参数赋值给$2

注释掉read

9》for循环

for  n  in  取值列表

do 

         执行命令

don

书写脚本习惯:

1.以.sh结尾。

2.脚本开头第一行 #!/bin/bash 脚本内容由谁解释。

  由于Linux下默认是bash,所以也可以不写这一行。

相关文章

  • day 28

    shell编程基础 shell编程一小时光速入门web集群架构会用到shell编程基础 1、为什么要学shell编...

  • day28-Shell脚本基础

    SHELL编程基础 三小时光速入门因为集群架构会用到shell编程基础,提前讲一丢丢。 shell编程 1. 为什...

  • day28 shell编程基础入门

    1》为什么要学习shell编程? Linux系统中会大量使用shell,工作中也需要自动化实现业务, 例如:自动备...

  • 作业-第07周--课堂-Day28-Shell与Shell编程相

    Day28 课堂作业 1. Shell与Shell编程相关 1.1 为什么要学习Shell编程? Linux系统中...

  • Shell编程3小时光速入门

    作者:马帅琦 归档:day28 时间:2019/4/9 Shell编程3小时光速入门 因为Web集群架构会用到Sh...

  • shell脚本基础(一)

    这片文章是基于Shell脚本编程30分钟入门的入门基础,简要介绍shell的一些常用需要注意的语法基础。请务必熟悉...

  • 第二十八天课堂笔记

    老男孩思想: Shell编程3小时光速入门 因为Web集群架构会用到Shell编程基础,提前讲。 跟老男孩学Lin...

  • DAY28 Shell编程基础

    1、为什么要学习Shell编程? Linux系统中会大量的使用Shell,工作中我们也需要自动化实现业务,例如:自...

  • day28 Shell编程基础

    1、为什么要学习Shell编程? Linux系统中会大量的使用Shell,工作中我们也需要自动化实现业务,例如:自...

  • day28 shell编程基础

    Day 28 作者:翟玉龙 归档:课堂笔记 2019/3/08 快捷键: Ctrl + 1 标题****1 Ctr...

网友评论

      本文标题:day28 shell编程基础入门

      本文链接:https://www.haomeiwen.com/subject/cauviqtx.html