On Tue, Aug 06, 2019 at 06:18:27PM +0000, Mohamed Akram wrote: > Bash version: GNU bash, version 5.0.7(1)-release (x86_64-apple-darwin18.5.0) > > Example: > > shopt -s nullglob > a='\x30' > echo $a > > Expected output: > > \x30 > > Actual output: >
Also happens in bash 5.0 on Debian GNU/Linux. It does not happen in bash 4.4 or earlier (I tried back to 3.2) on the same machine. For the record, echo $a is *not* a sane way to see the contents of your variable. printf %s\\n "$a" is the safest. echo "$a" would be marginally acceptable in some cases. Unquoted $a is a bad idea, which may explain why it didn't receive enough testing to uncover whatever this is. No sane person would do it.