shell编程练习题

本文记录了一道Shell编程练习题,要求根据用户输入的"B"或"g"显示相应性别,作者通过if循环和case语句两种方式实现,并分享了在编写过程中遇到的语法错误及解决过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

近来学习到linux的shell编程一块,于是学完后想练习一下。本文就是基于一道练习题来记录一下自己遇到的问题以及解决的过程。
首先看题目:编写shell脚本,要求实现如下功能:当执行一个程序的时候,这个程序会让使用者选择boy或者girl;如果使用者输入B或者b时,就显示:He is a boy;如果使用者输入G或者g时,就显示:She is a girl;如果是除了B/b/G/g以外的其他字符,就显示:I don’t know
其实是一道比较简单的题目,但是因为对shell不熟悉,语法错的还是比较多的。我首先想到的就是用if循环来实现,以下是的第一次的代码:the first time在这里插入图片描述
当然赋权限运行后就报语法错误了。这里的错误还是比较明显的几个,首先是 11 行的结尾应该是fi(这个错的真是不该) 然后就是第5 行的if 判断的时候[ ]里面的内容一定要在开头跟结尾加上空格。否则就会报这样的错误test_1.sh: line 5: [: missing]’
百度后还是报错,仔细看了看文档才发现,if中的多重判断是有固定格式的在这里插入图片描述
也就是判断逻辑或要使用 -o 选项。于是就有了接下来的脚本

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值