第一章shell历史与变量

2.1shell历史与bash简介

Shell就是一个用于客户交互操作硬件的一个中间件。由于linux版本众多,shell也有很多种,/bin/bashlinux默认的shell

Bash shell的功能:

Tab自动补全、历史命令、命令别名、标准输入输出、重定向操作和管道功能。

History 查看历史 history -c 清除历史,!n使用命令历史  

Alias查看别名

运维shel小编(2)_运维

运维shel小编(2)_shell_02

>输出

运维shel小编(2)_shell_03

1>2>分别是正确输出和错误输出

运维shel小编(2)_shell_04

|管道命令,用于将上一个执行结果向下传递

运维shel小编(2)_shell_05

2.2 shell变量的应用

变量:就是用一个特定字符串代替不固定的内容。Shell变量为linux提供了灵活的参数,包括变量名和变量值两部分。

变量赋值格式:变量名=变量值

变量查看的方式:echo $变量名

Env用于查看全局变量,set所有变量

运维shel小编(2)_shell_06

运维shel小编(2)_shell_07

通过键盘输入内容为变量值的格式为:read [-p  “信息”]  变量名

对于引用时符号注意事项:双引号“”表示引用变量值,单引号''表示$视为普通值,反撇号``意思为将结果输出给变量。

运维shel小编(2)_运维_08

如果引用变量,它会认为$a11111看成一个整体变量,需要用${a}

 

 

运维shel小编(2)_shell_09

测试一个shell脚本,格式如下,但是我们却看不到结果,因为全局变量才会被启用

运维shel小编(2)_shell_10

全局变量才会被启用,我们可以使用export 变量名将结果变为全局变量,然后就可以引用了。unset进行取消变量。

 

运维shel小编(2)_运维_11

键盘键入变量

运维shel小编(2)_shell_12

2.3 shell的其它变量

环境变量配置文件/etc/profile我们可以通过path增加环境变量路径,将该路径下变量变为全局变量

运维shel小编(2)_shell_13

位置变量是指,一个数组可以使用$1-9来引用变量值

运维shel小编(2)_shell_14

运维shel小编(2)_shell_15

预定义变量$#:返回命令行中参数个数,$*:显示参数内容,$?:返回上一条命令的状态,为0表示正常,$$:当前进程号,$0:当前执行进程。

运维shel小编(2)_运维_16

 

 

运维shel小编(2)_运维_17

2.4 shell 脚本简介与简单实例

Shell脚本是用于完成特定的、较复杂任务的一种自动化文本。是高级管理员必备的工具。

1、一个与键盘交互的shell脚本

 

运维shel小编(2)_shell_18

 

2.完成一个简单的数值运算,对于计算我们使用(())双重的括号来进行数学运算。

运维shel小编(2)_运维_19

运维shel小编(2)_运维_20

3.每隔三天对数据库进行一次完整备份,并记录磁盘信息

 

运维shel小编(2)_shell_21