shell编程规范与变量

目录

一、Shell

1、shell的介绍

2.shell种类

3、shell脚本是什么?

4、shell 的能做什么(初步理解)

二、shell脚本

1、Shell脚本的构成

2、Shell脚本的执行

1、路径执行

2、sh或bash执行

3、source执行 (不常用)

3、管道操作  |

三、重定向与管道操作

1、重定向输入

2、重定向输出

3、标准错误输出

4、混合输出

四、shell变量的作用类型

1、变量的作用类型

2、自定义变量

2.1、变量的定义

2.2、echo输出变量值

2.3、 单引号、双引号、反撇号

2.4、交互式定义变量(read)☆

2.5、变量的作用范围(局部变量和全局变量)

3、特殊变量

3.1、环境变量

3.2、只读变量

3.3、位置变量

3.4、预定义变量

五、变量运算

1、expr命令

2、运算符号 

2.1 $(())符号的使用

2.2、 $[] 符号的使用

2.3、let 命令

2.4、 bc 命令

2.5 变量格式

总结


一、Shell

1、shell的介绍

Shell是一个特殊的应用程序,它介于操作系统内核与用户之间,充当了一个“命令解释器”的角色,负责接收用户输入的操作指令(命令)并进行解释,将需要执行的操作传递给内核执行,并输出执行结果。
Bash(/bin/bash)是目前大多数 Linux 版本采用的默认 Shell。

2.shell种类

常见的shell解释器有很多中,使用不同的shell,其内部指令、命令性提示符等方面会存在一些区别,通过/etc/shells 文件可以了解当前系统所支持的shell脚本种类。

shell的种类    shell的功能
/bin/sh    是shell命令的软链接(已被/bin/bash所替换)
/bin/bash    基准于FNU的框架下发展出的shell
/usr/bin/sh    已被/bin/bash替换
/usr/bin/bash    centos 和redhat 系统默认使用的bash
/bin/tcsh    csh的增强版,与csh完全兼容,整合了csh,提供更多的功能
/usr/sbin/nologin    让用户无法登陆主机
/sbin/nologin    软连接

3、shell脚本是什么?

shell脚本就是把原来的linux命令或语句放在一个文件中,然后通过这个程序文件去执行,我们就说这个程序为shell 或者脚本。
将需要执行的命令保存到一个文件中,按照顺序执行,它不需要编译,它是解释型的。

4、shell 的能做什么(初步理解)

自动化完成软件的安装部署
自动化完成系统的管理,如批量添加用户
自动化完成备份,如数据库定时备份
自动化的分析处理,如网站访问量

应用场景
重复性操作、交互性任务、批量事务处理、服务运行状态监控、定时任务执行、......

二、shell脚本

1、Shell脚本的构成

1.脚本申明(解释器):若第一行为“#!/bin/bash”,表示此行以下的代码语句是通过/bin/bash程序来解释执行,#!/bin/bash为默认解释器。还有其它类型的解释器,比如#!/usr/bin/python、#!/usr/bin/expect。
2.注释信息:以“#”开头的语句表示为注释信息,被注释的语句在运行脚本时不会被执行。
3.可执行语句:比如echo命令,用于输出" "之间的字符串

 

2、Shell脚本的执行

1、路径执行

指定路径的命令,要求文件必须有 x 权限
chmod +x /opt/xg.sh
指定绝对路径:/opt/xg.sh
指定相对路径:./xg.sh(脚本环境)

退出脚本环境

2、sh或bash执行

指定Shell来解释脚本,不要求文件必须有 x 权限。
sh 脚本路径:sh -x xg.sh  或者 bash -x xg.sh

sh xg.sh    bash xg.sh

3、source执行(不常用)

source 脚本路径(系统环境)  不要求文件有执行权限:. xg.sh 或者 source xg.sh 

 

3、管道操作  |

将管道符号“|”左侧的命令输出的结果,作为右侧命令的输入(处理对象),同一行命令中可以使用多个管道。
ps aux | wc -l
echo "abc123" | passwd --stdin zhangsan 

三、重定向与管道操作

交互式硬件设备

类型  设备文件  文件描述编号    默认设备
标准输入    /dev/stdin 0        键盘
标准输出   /dev/stdout   1   显示器
标准错误输出     /dev/stderr  2            显示器

重定向操作

类型   操作符   用途
重定向输入    <    从指定的文件读取数据
重定向输出   >      将标准输出结果 保存 到指定的文件,并且覆盖原有内容
 >>  将标准输出结果 追加 到指定的文件的尾部,不覆盖原有内容
标准错误输出    2>   将错误信息 保存 到指定的文件,并且覆盖原有内容
 2>>   将错误信息 追加 到指定的文件的尾部,不覆盖原有内容
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值