77

Homebrew has a neat trick of printing out little icons next to its output. Like this:

brew icons in terminal output

If I copy paste the icon it on its own and hit enter I get the result:

-bash: $'?\237\215?': command not found

And if I try it with echo or printf I just get ????. Same if I escape all the quotes and $s etc.

editron:~ stib$ echo $'?\237\215?'
????

So how do they do that? What do the magic characters $'?\237\215?' mean?

68

Homebrew is open source, so you can read its code to find out how it shows the icon. The line they're using is in the file formula_installer.rb:

print "🍺  " if MacOS.version >= :lion

The first character in the print command is a "🍺", or unicode #1f37a 'BEER MUG'.

So it's not an icon but an funny unicode beer mug :)

  • 18
    Awesome. So in the shell I can just do echo -e "\xF0\x9f\x8d\xba" – stib Jan 18 '13 at 13:28
  • 4
    Also, try looking it up in the OS X dictionary (right click > look up) ;) – ihatetoregister Feb 13 '13 at 1:13
  • 4
    Or with octal: echo $'\360\237\215\272' – Chad Skeeters Jul 3 '13 at 21:46
  • 1
    Also from just about anywhere in OS X you can summon the Emoji keyboard using the shortcut Ctrl + Cmd + Space. Doesn't work everywhere but works in most places – dominicbri7 Jul 29 '16 at 9:20
13

BTW, try another variants in terminal:

echo $'\360\237\215\270'
echo $'\360\237\215\271'
echo $'\360\237\215\273'
echo $'\360\237\215\274'

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.