TIL this trick, via Pascal Hirsch on Twitter. Enter a line of Bash starting with a
# comment, then run
!:q on the next line to see what that would be with proper Bash escaping applied.
bash-3.2$ # This string 'has single' "and double" quotes and a $ bash-3.2$ !:q '# This string '\''has single'\'' "and double" quotes and a $' bash: # This string 'has single' "and double" quotes and a $: command not found
How does this work? James Coglan explains:
!character begins a history expansion;
!stringproduces the last command beginning with
:qis a modifier that quotes the result; so I'm guessing this is equivalent to
"", so it produces the most recent command, just like
A bunch more useful tips in the thread about this on Hacker News.
Created 2020-10-01T13:32:02-07:00, updated 2020-10-03T22:30:04-07:00 · History · Edit