~emersion/mrsh

ref: 32aff6e15dcabde2822abd06c8aa10ddc2e7144f mrsh/test/case.sh -rw-r--r-- 576 bytes
32aff6e1Drew DeVault Mostly implement break and continue builtins 1 year, 5 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
#!/bin/sh
x=hello

case "$x" in
	hello)
		echo pass
		;;
	world)
		echo fail
		;;
esac

case "$x" in
	he*)
		echo pass
		;;
	*)
		echo fail
		;;
esac

case "$x" in
	foo)
		echo fail
		;;
	he??o)
		echo pass
		;;
esac

case "$x" in
	foo)
		echo fail
		;;
	*)
		echo pass
		;;
esac

case "$x" in
	world|hello)
		echo pass
		;;
	*)
		echo fail
		;;
esac

case "$x" in
	hell[a-z])
		echo pass
		;;
	*)
		echo fail
		;;
esac

y=hello

# Expanding patterns
case "$x" in
	$y)
		echo pass
		;;
	*)
		echo fail
		;;
esac

# ;; optional for last item
case hello in
	*)
		echo pass
esac