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?

2 Answers 2

69

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 :)

4
  • 19
    Awesome. So in the shell I can just do echo -e "\xF0\x9f\x8d\xba"
    – stib
    Jan 18, 2013 at 13:28
  • 4
    Also, try looking it up in the OS X dictionary (right click > look up) ;)
    – norq
    Feb 13, 2013 at 1:13
  • 4
    Or with octal: echo $'\360\237\215\272' Jul 3, 2013 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 Jul 29, 2016 at 9:20
14

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'
1

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .