source: first-aid-kit/trunk/fuentes/first-aid-kit.install/usr/share/first-aid-kit/grub-listmenu.sh @ 8497

Last change on this file since 8497 was 8497, checked in by daduve, 2 years ago

Adding grub-listmenu executable

  • Property svn:executable set to *
File size: 4.5 KB
Line 
1gawk  'BEGIN {                                                                                                                       
2  l=0                                                                                                                               
3  menuindex= 0                                                                                                                       
4  stack[t=0] = 0                                                                                                                     
5}                                                                                                                                   
6
7function push(x) { stack[t++] = x }                                                                                                 
8
9function pop() { if (t > 0) { return stack[--t] } else { return "" }  }                                                             
10
11{                                                                                                                                   
12
13if( $0 ~ /.*menu.*{.*/ )                                                                                                             
14{                                                                                                                                   
15  push( $0 )                                                                                                                         
16  l++;                                                                                                                               
17
18} else if( $0 ~ /.*{.*/ )                                                                                                           
19{                                                                                                                                   
20  push( $0 )                                                                                                                         
21
22} else if( $0 ~ /.*}.*/ )                                                                                                           
23{                                                                                                                                   
24  X = pop()                                                                                                                         
25  if( X ~ /.*menu.*{.*/ )                                                                                                           
26  {                                                                                                                                 
27     l--;                                                                                                                           
28     match( X, /^[^'\'']*'\''([^'\'']*)'\''.*$/, arr )                                                                               
29
30     if( l == 0 )                                                                                                                   
31     {                                                                                                                               
32       print menuindex ": " arr[1]                                                                                                   
33       menuindex++                                                                                                                   
34       submenu=0                                                                                                                     
35     } else                                                                                                                         
36     {                                                                                                                               
37       print "  " (menuindex-1) ">" submenu " " arr[1]                                                                               
38       submenu++                                                                                                                     
39     }                                                                                                                               
40  }                                                                                                                                 
41}                                                                                                                                   
42
43}' /boot/grub/grub.cfg
Note: See TracBrowser for help on using the repository browser.