1 path=':/bin:/tmp::/:.:/no/such/dir:.' 2 path='/bin:/tmp:/:/no/such/dir' 3 path='/bin:/tmp:/:/no/such/dir' 4 path='/bin':'/tmp':'/':'/no/such/dir' 5 path='/bin':'/tmp':'/':'/no/such/dir' 6 path_/usr/xbin=/opt/xbin/ 7 paths=/bin /tmp / /no/such/dir /opt/xbin 8 PATHS=/BIN /TMP / /NO/SUCH/DIR /OPT/XBIN 9 The answer is 42 10 dirname of 'a/b/c def a.b.c a.b/c a a.a .gitignore a a.a' is 'a/b . . a.b . . . . .' 11 basename of 'a/b/c def a.b.c a.b/c a a.a .gitignore a a.a' is 'c def a.b.c c a a.a .gitignore a a.a' 12 suffix of 'a/b/c def a.b.c a.b/c a a.a .gitignore a a.a' is 'c b/c a gitignore a' 13 root of 'a/b/c def a.b.c a.b/c a a.a .gitignore a a.a' is 'a/b/c def a.b a a a a a' 14 S: 15 C: 16 @: 17 S:empty 18 C:empty 19 @: 20 mod-subst: 21 :a b b c: 22 :a b b c: 23 : b c: 24 :a c: 25 :x__ 3 x__ 3: 26 12345 27 mod-subst-chain: 28 A B c. 29 mod-regex: 30 :a b b c: 31 :a b b c: 32 : b c: 33 make: RE substitution error: (details omitted) 34 :C,word,____,:Q}: 35 :a c: 36 :x__ 3 x__ 3: 37 :+one+ +two+ +three+: 38 mod-loop-resolve:w1d2d3w w2i3w w1i2d3 2i${RES3}w w1d2d3 2i${RES3} 1i${RES2}w: 39 mod-loop-varname-dollar:(1) (2) (3). 40 mod-loop-varname-dollar:() () (). 41 mod-loop-varname-dollar:() () (). 42 mod-subst-dollar:$1: 43 mod-subst-dollar:$2: 44 mod-subst-dollar:$3: 45 mod-subst-dollar:$4: 46 mod-subst-dollar:$5: 47 mod-subst-dollar:$6: 48 mod-subst-dollar:$7: 49 mod-subst-dollar:$8: 50 mod-subst-dollar:U8: 51 mod-subst-dollar:$$$$: 52 mod-loop-dollar:1: 53 mod-loop-dollar:${word}$: 54 mod-loop-dollar:$3$: 55 mod-loop-dollar:$${word}$$: 56 mod-loop-dollar:$$5$$: 57 mod-loop-dollar:$$${word}$$$: 58 mod-regex-limits:00-ok:1 2323 45456 59 make: No subexpression \1 60 make: No subexpression \1 61 make: No subexpression \1 62 make: No subexpression \1 63 mod-regex-limits:11-missing:1 6 64 mod-regex-limits:11-ok:1 22 446 65 make: No subexpression \2 66 make: No subexpression \2 67 make: No subexpression \2 68 make: No subexpression \2 69 mod-regex-limits:22-missing:1 6 70 make: No subexpression \2 71 make: No subexpression \2 72 make: No subexpression \2 73 make: No subexpression \2 74 mod-regex-limits:22-missing:1 6 75 mod-regex-limits:22-ok:1 33 556 76 mod-regex-limits:capture:ihgfedcbaabcdefghijABCDEFGHIJa0a1a2rest 77 make: RE substitution error: (details omitted) 78 mod-regex-errors: 79 mod-assign: first=1. 80 mod-assign: last=3. 81 mod-assign: appended=1 2 3. 82 1 83 2 84 3 85 mod-assign: ran:3. 86 mod-assign: global: 1, 3, 1 2 3, 3. 87 mod-assign-nested: then1t1 88 mod-assign-nested: else2e2 89 mod-assign-nested: then3t3 90 mod-assign-nested: else4e4 91 mod-tu-space: A B 92 mod-quote: new 93 94 line 95 mod-break-many-words: 500 96 mod-remember: 1 2 3 1 2 3 1 2 3 97 mod-remember: 1 2 3, SAVED=3 98 mod-gmtime: 99 %Y 100 2020 101 %Y 102 %Y 103 mod-localtime: 104 %Y 105 2020 106 %Y 107 mod-hash: 108 make: Unknown modifier 'h' 109 110 26bb0f5f 111 12345 112 make: Unknown modifier 'h' 113 114 make: Unknown modifier 'h' 115 116 mod-range: 117 make: Unknown modifier 'r' 118 119 1 2 3 120 make: Unknown modifier 'r' 121 122 make: Unknown modifier 'r' 123 124 exit status 0 125