首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Case语句在我的shell脚本中不起作用

Case语句在我的shell脚本中不起作用
EN

Stack Overflow用户
提问于 2012-11-16 17:03:50
回答 2查看 1.9K关注 0票数 0

我正在尝试为Mac OSX Mountain Lion (10.8.2)编写一个shell脚本。然而,无论我做什么尝试,我都不能让switch语句工作。他是脚本的一个非常简化的版本:

代码语言:javascript
运行
AI代码解释
复制
#!/bin/bash

while getopts "ei" opt; do
  case $opt in
    e)
      echo "Got option e"
      ;;
    i)
      echo "Got option i"
      ;;
    \?)
      echo "Invalid option: -$opt"
      ;;
  esac
done

无论我尝试什么,我都得不到任何输出。有什么想法吗?我以前也做过这样的脚本。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-16 17:09:08

您可能错误地传递了选项,不要忘记-

代码语言:javascript
运行
AI代码解释
复制
script.sh -e

注意:你也应该在一个无效的选项后退出:

代码语言:javascript
运行
AI代码解释
复制
\?)
  echo "Invalid option: -$opt"
  exit 1
  ;;
票数 3
EN

Stack Overflow用户

发布于 2012-11-16 17:06:18

尝试替换

代码语言:javascript
运行
AI代码解释
复制
\?)
  echo "Invalid option: -$opt"
  ;;

通过以下方式:

代码语言:javascript
运行
AI代码解释
复制
*)
  echo "Invalid option: -$opt"
  ;;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13421137

复制
相关文章
shell脚本中的case条件语句介绍和使用案例
#前言:这篇我们接着写shell的另外一个条件语句case,上篇讲解了if条件语句。case条件语句我们常用于实现系统服务启动脚本等场景,case条件语句也相当于if条件语句多分支结构,多个选择,case看起来更规范和易读
老油条IT记
2020/04/08
6.4K0
shell脚本中的case条件语句介绍和使用案例
Shell脚本(for、while和case语句的应用示例)
一、for循环语句 1、根据姓名列表批量添加用户 步骤:首先创建一个姓名列表 vim /root/users.txt 然后创建脚本vim uaddfor.sh批量添加用户 授权并执行后查看用户是否已
L宝宝聊IT
2018/06/20
2.5K0
shell脚本快速入门系列之------条件语句(if、case)
test命令 测试特定的表达式是否成立,当条件成立时,测试语句的返回值为0,否则为其他数值
不吃小白菜
2020/09/03
6090
shell脚本快速入门系列之------条件语句(if、case)
Shell脚本应用(for、while循环语句和case分支语句)
1、for:读取不同的变量值,逐个执行同一组命令,直到取值完毕退出,变量值以空格分隔 语法: for 变量值 in 取值列表 do 命令序列 done 2、while:重复测试某个条件,成立则执行,进入下一个循环,直到条件不成立为止 语法: while 【条件测试 】 do 命令 添加更改测试条件语句 done 例:批量添加用户(stu1~stu20) prefix=“stu” i=1 while 【 $i -le 20 】 do user
L宝宝聊IT
2018/06/20
1.1K0
shell中if语句_shell脚本if判断
语法格式 ♦ if空格条件测试 then 命令序列 fi if加空格加一个条件测试,如果这个条件测试结果为真 那么就执行then后面的命令序列,这个命令序列可以是一条命令也可以是多条命令 只要条件测试为真,那么then后面的所有命令都会被执行,直到下一个fi代表if语句结束 如果if语句后面的条件测试失败,那么then后面的所有命令不再被执行
全栈程序员站长
2022/09/23
2.2K0
shell中if语句_shell脚本if判断
shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case语句
Shell的if语句的判断条件和其他编程语言一样写在if关键字的那一行,但是需要使用方括号括起来,并且变量和逻辑运算符以及方括号都要用空格隔开,这一点和其他的编程语言不一样,整个if语句块以fi关键字表示结尾,then语句块范围中的就是需要执行的代码。
端碗吹水
2020/09/23
3.7K0
shell脚本中的逻辑判断,文件目录属性判断,if特殊用法,case语句
【shell脚本】$ 在shell脚本中的使用
注释:$* 和 $@ 都表示传递给函数或脚本的所有参数,不被双引号(" ")包含时,都以"$1" "$2" … "$n" 的形式输出所有参数。但是当它们被双引号(" ")包含时,"$*" 会将所有的参数作为一个整体,以"$1 $2 … $n"的形式输出所有参数;"$@" 会将各个参数分开,以"$1" "$2" … "$n" 的形式输出所有参数
码缘
2019/07/01
6.6K0
Shell case条件语句的应用实践
语法格式 case "变量" in 值1) 指令1 ;; 值2) 指令2 ;; *) 指令3 ;; esac 示例 #!/bin/bash read -p "请输入[1-3]数字:" a case "$a" in 1) echo "1" ;; 2) echo "2" ;; 3) echo "3"
云计算小黑
2022/12/28
1K0
Shell 脚本中执行mysql语句
    对于自动化运维,诸如备份恢复之类的,DBA经常需要将SQL语句封装到shell脚本。本文描述了在Linux环境下mysql数据库中,shell脚本下调用sql语句的几种方法,供大家参考。对于脚本输出的结果美化,需要进一步完善和调整。以下为具体的示例及其方法。
Leshami
2018/08/13
7.1K0
详解shell脚本case条件语句,开发各种服务启动脚本跳板机
#前言:case条件语句我们常用于实现系统服务启动脚本等场景,case条件语句也相当于if条件语句多分支结构,多个选择,case看起来更规范和易读
老油条IT记
2020/09/04
8930
shell脚本循环语句
  Shell中的for循环可以使用seq来定义循环的数字范围,图中定义的就是循环1-100的数字。图中的示例是计算1-100所有数字的和,shell中的数学运算需要使用方括号括起来,但是不需要像if的方括号那样加上空格。   将图中的例子改一下,每次循环都打印一下相加的结果:   代码示例:
端碗吹水
2020/09/23
1.3K0
shell脚本循环语句
Shell-alias在Shell脚本中的使用
众所周知,shell脚本使用的是非交互式方式,在非交互式模式下alias扩展功能默认是关闭的,此时虽然可以定义alias别名,但是shell不会将alias别名扩展成对应的命令,而是将alias别名本身当作命令执行,如果shell内置命令和PATH中均没有与alias别名同名的命令,则shell会找不到指定的命令。
小小工匠
2021/08/16
2.5K0
shell 脚本 if 条件语句
使用test测试命令时,多数使用 “ [ 条件表达式 ] ”,条件表达式与方括号之间至少需要有一个空格。
小手冰凉
2019/09/10
1.3K0
shell 脚本 if 条件语句
shell中的for while case语法
其中,var表示循环变量,list是需要遍历的列表,command1、command2等是需要执行的命令。
堕落飞鸟
2023/03/30
6980
使用case语句编写系统服务脚本
case语句可以很好的代替if语句中的多分支结构,使用case分支语句时,有几个值得注意的特点如下所述:
小手冰凉
2019/09/10
1.1K0
使用case语句编写系统服务脚本
Mysql中的条件语句if、case
Mysql中的条件语句在我们对数据进行转换的时候比较有用,这样就不需要创建中转表。
大江小浪
2018/07/24
6.7K0
4个for/while循环语句及case语句实用脚本
脚本1:工作中如果要批量关机,可使用以下脚本查看192.168.4.0网段哪些是关机,哪些是开机状态。 备注:1.{1..254}也可写作`seq 1 254` 2.for IP in
吴柯
2018/04/16
1.1K0
4个for/while循环语句及case语句实用脚本
【shell】shell脚本实战-while循环语句
上文我们讨论了for循环的使用,在有限循环里,我们使用for循环是很方便的一件事情,今天我们来探讨下while循环
全栈程序员站长
2022/09/15
1.1K0
【shell】shell脚本实战-while循环语句
shell脚本中的if条件语句介绍和使用案例
#前言:在生产工作中if条件语句是最常使用的,如使用来判断服务状态,监控服务器的CPU,内存,磁盘等操作,所以我们需要熟悉和掌握if条件语句。
老油条IT记
2020/04/01
9.9K0
shell脚本中的if条件语句介绍和使用案例
shell脚本-循环选择语句
过程式编程语言: 顺序执行 选择执行 循环执行 注:条件中的变量,可以在执行语句中使用,不用在加上"$"。
菲宇
2022/12/21
2.4K0
shell脚本-循环选择语句

相似问题

Shell脚本中Case语句的动态模式

13

shell脚本中的简单case语句失败

32

试图在我的shell脚本中实现CASE

20

在shell脚本中使用case语句删除文件

23

while循环中的Case语句,shell脚本

30
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档