shell程序设计

本文介绍了Linuxshell的基本概念,包括其作为用户界面的功能、速度快的特点,以及编译型和解释型的区别。详细讲解了shell的语法,涉及变量、条件语句(如字符串比较、文件测试)、for、while、until和case循环的用法示例。
摘要由CSDN通过智能技术生成

一、什么是shell

  1. 定义:shell是一个作为用户与Linux系统间接口的程序,它允许用户像操作系统输入需要执行的命令。

  1. 功能:①执行命令 ②调用Linux工具 ③编写程序

  1. 特点:速度运行快、效率高。

  1. 类型:(1)编译型(2)解释型

(1)编译型:二进制可执行程序,指令,直接执行

(2)解释型:需要解释器,文本

二、shell的语法

  1. 变量:本地变量、环境变量、参数变量。

  1. 条件:字符串比较、算术比较、文件测试(如:&& ||)。

  1. 循环:for、while、until、bash。

(1)for语句

①在默认情况下,所有的shell变量值都被认为是字符串,而for结构循环能够处理一组值,这组值可以使任意字符串的集合。

②语法规则:


for variable(变量) in values(值)
do
    statements(命令)
done

③用法示例:

(2)while语句

①如果需要重复执行一个命令序列,但事先又不知道这个命令应该执行的次数,通常使用while语句。

②语法规则:


while  condition(条件)  
    do
    statements(命令)
done

③用法示例:

(3)until语句

①一般来说,如果不需要执行循环,就选用until循环;如果需要至少循环一次,就使用while循环。

②语法规则:


until condition(条件)
do  
    statements(命令)
done

(4)case语句

①case结构允许通过一种比较复杂的方式将变量的内容和模式进行匹配,再根据匹配的模式去执行不同的代码。

②语法规则:


case variable in
    pattern [ | pattern] ...) statements;;
    pattern [ | pattern] ...) statements;;
    ...
esac
注意:每个模式行都已双分号;;结尾

③例题演示:用case结构编写


while true
do
    echo "input"
    read line

    case "$line" in
        [yY]|[yY][eE][sS] ) echo "this is yes";;
        [nN]|[nN][oO] ) echo "this is no";;
        end ) break;;
        *) echo "***";;
    esac
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sweep-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值