ms-cats - various - Various utilities developed at bitreich. | |
git clone git://bitreich.org/various/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinw… | |
Log | |
Files | |
Refs | |
Tags | |
--- | |
ms-cats (10058B) | |
--- | |
1 #!/bin/sh | |
2 # | |
3 # From: https://devblogs.microsoft.com/oldnewthing/20220208-00/?p=106232 | |
4 # | |
5 | |
6 frame1=" * ,MMM8&&&. * | |
7 MMMM88&&&&& . | |
8 MMMM88&&&&&&& | |
9 * MMM88&&&&&&&& | |
10 MMM88&&&&&&&& | |
11 ‘MMM88&&&&&&’ | |
12 ‘MMM8&&&’ * | |
13 |\___/| /\___/\ | |
14 ) ( ) ~( . ‘ | |
15 =\ /= =\~ /= | |
16 )===( ) ~ ( | |
17 / \ / \ | |
18 | | ) ~ ( | |
19 / \ / ~ \ | |
20 \ / \~ ~/ | |
21 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
22 | | | |( ( | | | )) | | | | | | | |
23 | | | | ) ) | | |//| | | | | | | | |
24 | | | |(_( | | (( | | | | | | | | |
25 | | | | | | | |\)| | | | | | | | |
26 | | | | | | | | | | | | | | | " | |
27 | |
28 frame2=" * ,MMM8&&&. * | |
29 MMMM88&&&&& . | |
30 MMMM88&&&&&&& | |
31 * MMM88&&&&&&&& | |
32 MMM88&&&&&&&& | |
33 ‘MMM88&&&&&&’ | |
34 ‘MMM8&&&’ * | |
35 |\___/| /\___/\ | |
36 ) ( ) ~( . ‘ | |
37 =\ /= =\~ /= | |
38 )===( ) ~ ( | |
39 / \ / \ | |
40 | | ) ~ ( | |
41 / \ / ~ \ | |
42 \ / \~ ~/ | |
43 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
44 | | | |) )| | | (( | | | | | | | | |
45 | | | ( ( | | | |\\\\| | | | | | | | |
46 | | | |)_) | | |))| | | | | | | | |
47 | | | | | | | |\)| | | | | | | | |
48 | | | | | | | | | | | | | | | " | |
49 | |
50 frame3=" | |
51 * ,MMM8&&&. * | |
52 MMMM88&&&&& . | |
53 MMMM88&&&&&&& | |
54 * MMM88&&&&&&&& | |
55 MMM88&&&&&&&& | |
56 ‘MMM88&&&&&&’ | |
57 |\___/| /\___/\ | |
58 ) ( ) ~( . ‘ | |
59 =\ /= =\~ /= | |
60 )===( ) ~ ( | |
61 / \ / \ | |
62 | | ) ~ ( | |
63 / \ / ~ \ | |
64 \ / \~ ~/ | |
65 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
66 | | | |) )| | | (( | | | | | | | | |
67 | | | ( ( | | | |\\\\| | | | | | | | |
68 | | | |)_) | | |))| | | | | | | | |
69 | | | | | | | |\)| | | | | | | | |
70 | | | | | | | | | | | | | | | " | |
71 | |
72 frame4=" | |
73 | |
74 * ,MMM8&&&. * | |
75 MMMM88&&&&& . | |
76 MMMM88&&&&&&& | |
77 * MMM88&&&&&&&& | |
78 MMM88&&&&&&&& | |
79 |\___/| /\___/\ | |
80 ) ( ) ~( . ‘ | |
81 =\ /= =\~ /= | |
82 )===( ) ~ ( | |
83 / \ / \ | |
84 | | ) ~ ( | |
85 / \ / ~ \ | |
86 \ / \~ ~/ | |
87 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
88 | | | |) )| | | (( | | | | | | | | |
89 | | | ( ( | | | |\\\\| | | | | | | | |
90 | | | |)_) | | |))| | | | | | | | |
91 | | | | | | | |\)| | | | | | | | |
92 | | | | | | | | | | | | | | | " | |
93 | |
94 frame5=" | |
95 | |
96 | |
97 * ,MMM8&&&. * | |
98 MMMM88&&&&& . | |
99 MMMM88&&&&&&& | |
100 * MMM88&&&&&&&& | |
101 |\___/| /\___/\ | |
102 ) ( ) ~( . ‘ | |
103 =\ /= =\~ /= | |
104 )===( ) ~ ( | |
105 / \ / \ | |
106 | | ) ~ ( | |
107 / \ / ~ \ | |
108 \ / \~ ~/ | |
109 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
110 | | | |) )| | | (( | | | | | | | | |
111 | | | ( ( | | | |\\\\| | | | | | | | |
112 | | | |)_) | | |))| | | | | | | | |
113 | | | | | | | |\)| | | | | | | | |
114 | | | | | | | | | | | | | | | " | |
115 | |
116 frame6=" | |
117 | |
118 | |
119 | |
120 * ,MMM8&&&. * | |
121 MMMM88&&&&& . | |
122 MMMM88&&&&&&& | |
123 |\___/| /\___/\ | |
124 ) ( ) ~( . ‘ | |
125 =\ /= =\~ /= | |
126 )===( ) ~ ( | |
127 / \ / \ | |
128 | | ) ~ ( | |
129 / \ / ~ \ | |
130 \ / \~ ~/ | |
131 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
132 | | | |) )| | | (( | | | | | | | | |
133 | | | ( ( | | | |\\\\| | | | | | | | |
134 | | | |)_) | | |))| | | | | | | | |
135 | | | | | | | |\)| | | | | | | | |
136 | | | | | | | | | | | | | | | " | |
137 | |
138 frame7=" | |
139 | |
140 | |
141 | |
142 | |
143 MMMM88&&&&& . | |
144 MMMM88&&&&&&& | |
145 |\___/| /\___/\ | |
146 ) ( ) ~( . ‘ | |
147 =\ /= =\~ /= | |
148 )===( ) ~ ( | |
149 / \ / \ | |
150 | | ) ~ ( | |
151 / \ / ~ \ | |
152 \ / \~ ~/ | |
153 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
154 | | | |) )| | | (( | | | | | | | | |
155 | | | ( ( | | | |\\\\| | | | | | | | |
156 | | | |)_) | | |))| | | | | | | | |
157 | | | | | | | |\)| | | | | | | | |
158 | | | | | | | | | | | | | | | " | |
159 | |
160 frame8=" | |
161 | |
162 | |
163 | |
164 | |
165 | |
166 MMMM88&&&&&&& | |
167 |\___/| /\___/\ | |
168 ) ( ) ~( . ‘ | |
169 =\ /= =\~ /= | |
170 )===( ) ~ ( | |
171 / \ / \ | |
172 | | ) ~ ( | |
173 / \ / ~ \ | |
174 \ / \~ ~/ | |
175 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
176 | | | |) )| | | (( | | | | | | | | |
177 | | | ( ( | | | |\\\\| | | | | | | | |
178 | | | |)_) | | |))| | | | | | | | |
179 | | | | | | | |\)| | | | | | | | |
180 | | | | | | | | | | | | | | | " | |
181 | |
182 frame9=" | |
183 | |
184 __________________ | |
185 |Good Night Moon!| | |
186 \ ============== | |
187 | / | |
188 \/ | |
189 |\___/| /\___/\ | |
190 ) ( ) ~( . ‘ | |
191 =\ /= =\~ /= | |
192 )===( ) ~ ( | |
193 / \ / \ | |
194 | | ) ~ ( | |
195 / \ / ~ \ | |
196 \ / \~ ~/ | |
197 _/\_/\_/\__ _/_/\_/\__~__/_/\_/\_/\_/\_/\_ | |
198 | | | |) )| | | (( | | | | | | | | |
199 | | | ( ( | | | |\\\\| | | | | | | | |
200 | | | |)_) | | |))| | | | | | | | |
201 | | | | | | | |\)| | | | | | | | |
202 | | | | | | | | | | | | | | | " | |
203 | |
204 print_frame() { | |
205 tput cup 0 0 | |
206 printf "%s" "${1}" | |
207 sleep 1 | |
208 } | |
209 | |
210 trap "reset; exit;" SIGINT SIGABRT SIGTERM | |
211 | |
212 tput init | |
213 tput civis | |
214 tput clear | |
215 | |
216 while /bin/true; | |
217 do | |
218 print_frame "${frame1}" | |
219 print_frame "${frame2}" | |
220 print_frame "${frame3}" | |
221 print_frame "${frame4}" | |
222 print_frame "${frame5}" | |
223 print_frame "${frame6}" | |
224 print_frame "${frame7}" | |
225 print_frame "${frame8}" | |
226 print_frame "${frame9}" | |
227 print_frame "${frame8}" | |
228 print_frame "${frame7}" | |
229 print_frame "${frame6}" | |
230 print_frame "${frame5}" | |
231 print_frame "${frame4}" | |
232 print_frame "${frame3}" | |
233 print_frame "${frame2}" | |
234 done | |
235 |