Denys Vlasenko | c49d2d9 | 2010-09-06 10:26:37 +0200 | [diff] [blame] | 1 | # This test demonstrates that in unquoted $v, backslashes expand by this rule: |
| 2 | # \z -> \\\z; \<eol> -> \\<eol> (for any z, special or not), |
| 3 | # and subsequently globbing converts \\ to \ and treats \z as literal z |
| 4 | # even if it is a special char. |
| 5 | |
| 6 | >'Zf' |
| 7 | >'Z\f' |
| 8 | echo 'Expected' 'Actual' |
| 9 | v='\*'; echo 'Z\* :' Z$v |
| 10 | echo 'Z* :' Z\* |
| 11 | echo 'Z\f :' Z\\* |
| 12 | echo 'Z\* :' Z\\\* # NB! only this matches Z$v output |
| 13 | echo |
| 14 | v='\z'; echo 'Z\z :' Z$v |
| 15 | echo 'Zz :' Z\z |
| 16 | echo 'Z\z :' Z\\z |
| 17 | echo 'Z\z :' Z\\\z |
| 18 | echo |
| 19 | v='\'; echo 'Z\ :' Z$v |
| 20 | echo 'Z\ :' Z\\ |
| 21 | echo |
| 22 | v='*'; echo 'Z\f Zf :' Z$v |
| 23 | echo 'Z\f Zf :' Z* |
| 24 | echo |
| 25 | |
| 26 | rm 'Z\f' 'Zf' |
| 27 | echo Done: $? |