相关疑难解决方法(0)

如何调试bash脚本?

有没有办法调试bash脚本?例如,打印一种执行日志的东西,如"呼叫线路1","呼叫线路2"等.

bash shell

155
推荐指数
5
解决办法
16万
查看次数

案例陈述落实?

在流行的命令式语言中,一旦case语句匹配,switch语句通常会"落到"下一级.

例:

int a = 2;
switch(a)
{
   case 1:
      print "quick ";
   case 2: 
      print "brown ";
   case 3: 
      print "fox ";
      break;
   case 4:
      print "jumped ";
}
Run Code Online (Sandbox Code Playgroud)

会印出"棕色狐狸".

但是bash中的代码相同

A=2
case $A in
2)
  echo "QUICK"
  ;&
2)
  echo "BROWN"
  ;&
3)
  echo "FOX"
  ;&
4)
  echo "JUMPED"
  ;&
esac
Run Code Online (Sandbox Code Playgroud)

只打印"布朗"

如何将bash中的case语句"覆盖"到第一个示例之类的剩余条件?

(编辑:Bash版本3.2.25,;&语句(来自wiki)导致语法错误)

运行:

test.sh:

#!/bin/bash
A=2
case $A in
1)
  echo "QUICK"
  ;&
2)
  echo "BROWN"
  ;&
3)
  echo "FOX"
  ;&
esac
Run Code Online (Sandbox Code Playgroud)

得到:

./test.sh:line …

bash

52
推荐指数
3
解决办法
4万
查看次数

标签 统计

bash ×2

shell ×1