【Linux脚本编程】——Shell编程基础——001

 shell基础

目录

第1节 shell基础

1.1 什么是shell

1.1.1 shell对话方式

1.2 为什么使用shell编程

1.3 系统中的shell

第2节 变量

2.1 什么是变量

2.2 变量的分类

2.2.1 普通变量(局部变量)

2.2.2 环境变量(全局变量)

2.2.3 特殊变量

第3节 shell脚本的书写规范

3.1.1 脚本存放位置​

3.1.2 脚本编辑使用vim

3.1.3 选择解释

3.1.4 文件名书写

3.1.5 书写脚本的规范和习惯


第1节 概念

1.1 什么是shell

Shell是一个命令解释器,它在操作系统的最外层,负责直接与用户对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户。

 

1.1.1 shell对话方式

交互的方式:从键盘输入命令,通过/bin/bash的解析,可以立即得到Shell的回应,一问一答的方式

非交互式:shell脚本 

1.2 为什么使用shell编程

作为一个合格的运维人员必须掌握一种或一种以上的脚本语言,shell编程则是实现Linux/UNIX系统管理及自动化运维所必备的重要工具,可以把繁琐重复的命令写到shell脚本中执行,节约时间,有效的提高运维人员的工作效率,减少不必要的重复工作时间。

1.3 系统中的shell

linux系统默认shell是bash

【Linux脚本编程】——Shell编程基础——001_第1张图片

第2节 变量

2.1 什么是变量

x+y=20     x=10  y=? 未知数(变量)

一个未知数,随时可以变化的量叫变量

2.2 变量的分类

2.2.1 普通变量(局部变量)

只能在当前环境下使用,可以通过export命令临时把普通变量变为环境变量使用

[root@localhost ~]# ip=10.0.0.209    给变量赋值(把数据存放到变量中)
[root@localhost ~]# echo $ip
10.0.0.209
[root@localhost ~]# 

【Linux脚本编程】——Shell编程基础——001_第2张图片

2.2.2 环境变量(全局变量)

1.大写

2.系统定义的

3.在大部分地方可以使用

2.2.3 特殊变量

【Linux脚本编程】——Shell编程基础——001_第3张图片

类比记忆:

Linux和Java的对比:

echo  类似 System.out.println 效果

ip=10.0.0.09 等号两边不能有空格

read -p 类似 Scanner 提示用户录入信息

例如:

Linux:read -p "现在请输入一个文件名"  fn    

Java:Scanner sc =new Scanner(System.in);

第3节 shell脚本的书写规范

3.1.1 脚本存放位置

为了防止脚本乱放,统一存放在/shell/scripts/中

创建目录

【Linux脚本编程】——Shell编程基础——001_第4张图片

3.1.2 脚本编辑使用vim

3.1.3 选择解释

在执行bash脚本的时候,内核会根据"#!"后的解释器来确定该用那个程序解释这个脚本中的内容。

3.1.4 文件名书写

文件名称一定要有意义,方便看出是干嘛用的脚本,并且以.sh结尾

#数字比较

numberCompare.sh 

3.1.5 书写脚本的规范和习惯

案例:

【Linux脚本编程】——Shell编程基础——001_第5张图片【Linux脚本编程】——Shell编程基础——001_第6张图片

1、  放在统一目录下,方便查找

2、  书写脚本要用vim编辑【步骤】

  批量删除

  批量增加

  1.进入批量编辑模式(可视块)esc下ctrl+v  

  2.选择 批量增加的范围 , 这时可以配合指令d删除选中行u是撤销指令 o是插入指令(向下插入一行 )

  3.按  i 进行修改 ,下面显示插入状态即可编辑脚本了

       【Linux脚本编程】——Shell编程基础——001_第7张图片

  4.按esc 退出编辑状态 等等

       【录入】——》    wq:保存退出,q!强制退出  ——》并回车即可退出脚本编写

     【Linux脚本编程】——Shell编程基础——001_第8张图片

     5. 执行shell脚本——》输出数字10 13大小比较结果

     【Linux脚本编程】——Shell编程基础——001_第9张图片

3、 脚本文件名称以.sh结束

4、 脚本开头一定要指定解释器

5、 脚本中#代表注释,#后的内容不会执行,不用的命令等可以用#注释掉,脚本中尽量不要出现中文注释以免出现因字符集不                    同产生乱码

6、 代码符号书写规范

     1.成对的符号一定要都写出来再添加内容,避免遗忘漏写;如 "" '' []等

     2.流程控制语句一次书写完,再添加内容;(if 条件 ; then  内容;fi)

       3.书写的代码符号都是英文输入法格式

       4.通过缩进让代码易读

 

你可能感兴趣的:(Linux,Linux)