简述Linux系统shell脚本一

首先什么是shell:

讲到shell就要讲到计算机的组成。计算机是由系统软件应用软件组成的。而我们常用的软件大部分是属于应用软件的,我们使用的应用软件是通过将我们操作的命令传给shell,shell通过控制计算机的硬件来实现资源使用和调配的,shell更像是连接我们使用和计算机的纽带。

Shell是分类型的,通常可以在/etc/shells中参看当前使用的Linux支持那种类型,常见的类型包括:

/bin/sh

/bin/bash

/usr/bin/sh

/usr/bin/bash

/bin/tcsh

/bin/csh

其中我们常用的是/bin/bash

由于shell属于一种解释性语言,这就要求我们在使用shell时,需要使用脚本。在写shell脚本时需要在首行加入#!/bin/bash用来表明接下来写的脚本使用的是shell,需要用shell解释器进行编译。

因为我们在写shell脚本时,更像是写一个文件,将需要操作的命令和要启动的服务等写入文本,这就需要我们大量使用非交互命令

对于交互命令,由于需要进行交互输入。这就需要我们在写脚本时要讲交互命令及服务转变成非交互命令,或者用起来非交互命令进行替代。

对于shell脚本来说,echo是一个很特殊的命令,我们在使用shell脚本时,往往需要将我们写的脚本内容进行输出,或者需要将文本中的某些输出写入到其他文件中,这就需要使用echo命令。echo命令中的-e选项也是常用的,echo -e可以支持控制字符:

\\

输出\本身,\第一个表示转义符,取消命令特殊含义

\a

输出警告音  [root@localhost ~]# echo -e "\a"

\b

退格键,也就是向左删除

\f

换页符

控制字符

作用

\n

换行符

\t

制表符(TAB键)

Shell脚本一共三种执行方式:①:绝对路径或相对路径,需要可执行权限。(子shell中执行);②:. 执行或者source执行(两者相同),不需要可执行权限。(在当前shell中执行);③:bash,使用bash解释器启动,不需要可执行权限。(子shell中执行)。

这里解释下父shell子shell:当我们进入到Linux中时,会默认有一个shell,称为父shell,我们执行的命令大都是使用的父shell,我们在父shell中设定的变量等条件会在新建子shell时传给新shell,但是我们在子shell中的设定不会传给父shell,这也是我们通常所说的传子不传父。通常我们使用(命令)执行的命令实在子shell中,在{ 命令 ; }执行的命令时在父shell中。

在bash中是有一些特殊符号的:

    其中``这个是单反号,不是单引号,当使用英文输入时,使用~按键可以输入,这个符号的作用和$()时完全相同的。因此,我们在使用时为了避免使用错误,多使用$()来替代``来是使用。

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值