| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 系统运维 -> Shell编程规范与变量 -> 正文阅读 |
|
[系统运维]Shell编程规范与变量 |
目录 前言在一些复杂的Linux维护工作中,大量重复性的输入和交互操作不但费时费力,而且容易出错,而编写一个恰到好处的Shell脚本程序,可以批量处理、自动化额完成一系列维护任务,大大减少管理员的负担。 一、Shell的概述1.什么是ShellShell是一个命令解释器,它在操作系统的最外层,负责直接与用户进行对话,把用户的输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕反馈给用户。这种对话方式可是交互也可以是非交互式的,我们输入的命令计算机是不识别的,这时就需要一种程序来帮助我们进行翻译,变成计算机能识别的二进制文件程序,同时又把计算机的生成的结果返回给我们。 2.Shell的作用Linux系统中的Shell是一个特殊的应用程序,它介于操作系统内核与用户之间,充当了一个"命令解释器"的角色,负责接收用户输入的操作指令(命令)并进行解释,将需要执行的操作传递给内核执行,并输出执行结果。 常见的 Shell解释器程序有很多种,使用不同的Shell时,其内部指令、命令行提示符等方面会存在一些区别。通过cat/etc/shells文件可以了解当前系统所支持的Shell 脚本种类,登录后默认使用的Shell程序,一般为/bin/bash,不同的Shell的内部指令,运行环境等会有所区别。 二、Shell脚本的额概述1.什么是Shell脚本Shell脚本就是说我们把原来linux 命令或语句放在一个文件中,然后通过这个程序文件去执行时,我们就说这个程序为 shell脚本或shell程序,我们可以在脚本中输入一系统的命令以及相关的语法语句组合,比如变量,流程控制语句等,把他们有机结合起来就形成了一个功能强大的shell 脚本。也就是说,将需要执行的命令保存到一个文件中,按照顺序执行,它不需要编译,它是解释型的。 2.Shell脚本能干什么自动化完成软件的安装部署,如安装部署LAMP架构服务 自动化完成系统的管理,如批量添加用户 自动化完成备份,如数据库定时备份 自动化的分析处理,如网站访问量 3.Shell脚本的使用场景在需要完成大量复杂、重复性的工作时,不需要在命令行重复执行命令,直接运行shell脚本即可,大大的节省了时间提高了效率。 4.如何学习Shell脚本熟悉掌握各种Linux命令 掌握脚本的标准格式 掌握脚本的基本语法 三、Shell脚本的基本操作1.Shell的构成第一行为"#!/bin/bash" ,脚本申明(默认解释器〉∶表示此行以下的代码语句是通过/bin/bash程序来执行。还有其他类型的解释器.比如#! /usr/bin/python、#! /usr/bin/expect 注释信息:以"#“开头的语句表示为注释信息,被注释的语句在脚本运行时不会被执行 可执行语句:如echo命令,用于输出""之间的字符串 几种可执行脚本的方式 2.一个完整的Shell脚本构成四、重定向操作1.交互式硬件设备标准输入:从该设备接收用户输入的数据 标准输出:通过该设备向用户输出数据 标准错误:通过该设备报告执行出错的信息? ? ??
2.重定向操作
五、Shell变量及赋值1.Shell的变量变量是用来临时保存数据的,并且该数据时可以变化的,任何一个语言都离不开变量,如果某个内容需要多次使用并且会重复出现,这样就可以使用变量了,如果需要修改直接修改变量就可以了 2.变量的作用用来存放系统和用户所需要使用的特定参数 变量名:使用固定的名称,由系统预设或用户定义 变量值:能够根据用户设置,系统环境的变化而变化 3.变量的类型自定义变量:由用户自己定义、修改和使用 特殊变量:环境变量、只读变量、位置变量、预定义变量 4.用echo查看和引用变量通过在变量名称前添加前导符号"$",可以引用一个变量的值,使用echo 命令可以查看变量,可以在一条 echo命令中同时查看多个变量值 5.变量赋值的特殊操作格式:echo $变量名 基本格式为“变量名=变量值” echo的一些命令字符? 双引号(")主要起界定字符的作用,可以调用里面的变量 反撇号主要用于命令替换,将执行的命令赋值给变量? 用来提示用户输入信息,从而实现简单的交互? 6.设置变量的作用范围默认情况下,新定义的变量只在当前的Shell环境中有效,因此称为局部变量。当进入子程序或新的子Shell环境时,局部变量将无法再使用 格式1:export 变量名 格式2:export 变量名=变量值 7.数值变量的计算格式:expr 变量1 运算符 变量2 [运算符 变量3]? 常用运算符? 加法运算:+ 减法运算:- 乘法运算:\* 除法运算:/ 取余运算:% 六、特殊的Shell变量1.环境变量由系统提前创建,用来设置用户的工作环境 配置文件:/etc/profile、~/.bash_profile 常见的环境变量: PWD、PATH USER、SHELL、HOME 2.只读变量用于变量值不允许被修改的情况 3.位置变量表示为$n,n为1~9的数字 4.预定义变量$#:命令行中位置变量的个数 $*:所有位置变量的内容 $?:上一条命令执行返回的状态,返回0表示执行正常,非0表示执行异常或出错 $0:当前执行的进程/程序名 总结Shell脚本内容的构成:环境声明、注释文字、执行语句 重定向包括重定向输入、重定向输出、错误重定向 定义或赋值变量时,采用“变量名=变量值”的格式,赋值方式还可以使用单引号、双引号、反撇号、read命令等方式 查看或引用变量时,采用“$ 变量名”的格式 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/30 2:39:53- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |