How would one read things like these in linux : $, $*, $?, $#, $@ ?

Is there any convention that people follow while talking/explaining about these things?


  • 1
    There is a quite good video explaining it. Check this youtube.com/watch?v=5IfHm6R5le0 ;) – kek Aug 23 '16 at 6:48
  • 4
    The comment you posted is completely irrelevant to what I asked actually. – posixKing Aug 23 '16 at 6:57
  • To add to the other answers here: the $ in a terminal (indicating that it's ready for user input) might be called a command prompt or shell prompt. A # might be called a root shell prompt*. – Nick Weinberg Dec 4 '16 at 0:09

The "$" character is commonly referred to as the "dollar sign". I would pronounce each character of the variable name as follows:

  • $ - dollar sign
  • * - asterisk
  • ? - question mark
  • # - pound (sign) or hash (symbol)
  • @ - at (symbol)

Occasionally, certain combinations have shortened forms. The opening characters of an executable script (#!) are pronounced as "shebang" or "hash bang". I'm not aware of shortened forms for any of your examples.

  • 4
    I'm upvoting, but in British English, it would be really confusing to call # pound... I call it 'hash'... – Zanna Aug 23 '16 at 6:54
  • @Zanna good catch. I'll add that in. – Nathan Osman Aug 23 '16 at 6:56
  • 2
    Also, Perl is n̶o̶t̶o̶r̶i̶o̶u̶s̶ well known for giving weird names to variables and operators. For example, <=> is known as the spaceship operator. – Nathan Osman Aug 23 '16 at 6:59
  • 7
    That is clearly a spaceship. I don't see why you find it odd ;) – Zanna Aug 23 '16 at 7:03
  • @NathanOsman # has to be hash in the Linux world. Otherwise, how would we have the hashbang? – TheWanderer Aug 23 '16 at 13:01

In my experience among Linuxers verbalising orally, there is no universal fixed convention attached to the pronunciation of these symbols.

They are called by the locally applicable name for the symbol itself as suggested by Nathan Osman, or sometimes by what they do as operators in maths or in bash - whatever the speaker thinks will be understood by the listeners.

$ seems to always be "dollar" or "dollar sign"

But * might be "asterisk" "star" or "glob"

# is "hash" (as in hashtag) in British English, "pound" in US English, or possibly "number sign" as in #1 #2 #3 in either, but sometimes I hear it called "comment sign"

It's much easier to explain code by writing it down. Talking about it usually ends in a lot of gesturing and sooner or later resorting to scribbling on beermats...

  • 1
    So $ doesn't mean cash and $$ more cash? Also, I always thought # is called the miniscule tic-tac-toe sign. Dammit — I was wrong for years! – PerlDuck May 29 '18 at 15:27

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.