Shell脚本简介

Shell脚本的特点

    完成复杂而强大的系统命令操作,但执行效率低、没有图形界面、无法操作底层硬件设备,只能依赖类UNIX平台

Shell脚本程序的基本结构

    Bash是UNIX世界使用最为广泛的Shell,所以脚本文件应该以如下语句作为开头。

#!/bin/bash           这句代码声明了解释该脚本的程序,该声明不是必须的。但有两个作用,一是使用该声明后,就可以使用bash内建的指令,如变量声明、条件判断等高级特性,如果不使用该声明就只能使用命令的简单集合了;二是为了增强代码的健壮性,如果将没有声明的脚本一直到默认使用Csh的系统运行,系统会调用Csh来解释该脚本,这样可能会出现兼容性问题。

      “#!”在Shell编程中被称为魔数。在魔数后应该指定一个运行该脚本的程序名的完整路径,必须注意的是,路径与程序名必须存在,否则运行脚本文件只会得到一个错误提示。由于脚本文件其实就是一些程序的自动运行,所以最简单的脚本就是罗列一些命令,每个命令占一行。在最后添加一句退出命令“exit”,这样就有了第一个简单的脚本文件。

#!/bin/bash

df >df_info

vi df_info

exit


 

Bash脚本文件应该以sh作为后缀。当然这并不是必须的,用户可以使用任意字符作为脚本文件的后缀。但出于兼容性方面的考虑,还是建议将脚本文件均以sh作为后缀。

Shell脚本程序的几种特殊字符

1.注释字符#

2.双引号“     双引号可以强制Shell将一些特殊字符作为普通字符使用。

3.单引号‘      与双引号类似买单其强制将所有特殊字符作为普通字符使用

。。。$ echo "$BASH" #使用带有双引号的命令来显示系统变量BASH的值
/bin/bash #使用双引号时,$BASH可以获得Bash的信息
。。。$ echo '$BASH' #使用带有单引号的命令试图显示系统变量的值
$BASH   #如果使用单引号,则会将$BASH原样输出,因为单引号取消了$的特殊意义

4.转义字符\

  • \n:新行
  • \r:回车
  • \t:tab键
  • \v:垂直tab
  • \a:报警,也就是系统蜂鸣器响一声

用户交互

1.输出提示信息

     在Shell中,可以使用echo命令将文本信息输出至终端。用法示例如下:

echo ”hello world“
echo ”$BASH“
#或者也可不用双引号,直接显示,这两种显示方式是等效的
echo hello world
echo $BASH

     使用这种方式有个缺陷,就是一次只能显示一行内容。如果要显示多行文本,使用echo命令就显得不够优雅。

     Shell提供了一种更为方便的方法来显示多行文本,也是使用”<<”界定符。

#!/bin/bash
cat <<EOF #在“<<”操作符后跟的“EOF”是界定符,Shell将一直输出后面的文本,直到遇到“EOF”,界定符EOF可以是任意字符
hello linux!
hello Ubuntu!
goodbye Windows!
welcome to real world!
EOF            #遇到“EOF”,输出结束
exit


 

2.获得用户输入

     Shell脚本获得用户输入的函数是read

echo “please input a number:”
read user_in   #读取用户输入,并存入名为user_in的变量中
echo “the number of you input is $user_in”


 

3.运行脚本的方法

    编写完后,使用ls -l命令查看文件详情

     添加运行权限,可以使用chmod命令,chmod u+x test.sh

     运行脚本 ./test.sh

     显示运行脚本  bash test.sh

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值