Here you'll be given a quick Terminal tutorial outlining some introduction commands and inputs to give you a better grasp on the command line.

Following the instructions below in order will give you a step-by-step instruction that should get you up to speed with the basics of using the Terminal.

The traditional Unix commands have been translated into emoji in order to call to question the arbitrary English based command naming conventions, being replaced with the pictographic language of emoji.

Each $ is a new line to try in the terminal. DO NOT COPY THE $.


You will need to download a bash script and execute it to make the emoji commands available. Here is how to do this...

  $ curl -O https://gist.githubusercontent.com/bgraves/20af9279100fc75599eb1db094d90e69/raw/bb4c8aafb3980a7b16e44b4d6b1d8b809c26fe0b/emoji.sh
  $ source emoji.sh

Who am i ๐Ÿ™‹

On Unix based systems like Linux or Mac OS, you are a user ๐Ÿ™‹. To find out who you are you can always ask!

   $ ๐Ÿ™‹

Where am i? ๐Ÿค”

Directories are folders ๐Ÿ“. When you open the terminal you are in your home ๐Ÿ  folder or directory. If you get lost you can ask!

   $ ๐Ÿค”

What is in ๐Ÿ“?

You can see the contents of a ๐Ÿ“ by listing them.

   $ ๐Ÿ“ƒ

Navigating to a new ๐Ÿ“

Think of ๐Ÿ“ as a tree ๐ŸŒฒ. You can climb up and down the ๐ŸŒฒ.

To go in a ๐Ÿ“ up the tree.

  $ ๐Ÿ“ Documents

To go down the tree.

  $ ๐Ÿ‘‡

Making a new ๐Ÿ“

  $ โœจ๐Ÿ“ ๐ŸŒž

Putting some stuff together ๐Ÿค”

  $ ๐Ÿ“ ๐ŸŒž
  $ ๐Ÿค”
  $ ๐Ÿ‘‡
  $ ๐Ÿค”

Creating files ๐Ÿ“

Let's create ๐Ÿ“ in ๐Ÿ“ ๐ŸŒž.

 $ ๐Ÿ“ ๐ŸŒž

You can create an empty file by touching ๐Ÿ‘ˆ it and naming it.

  $ ๐Ÿ‘ˆ ๐ŸŒ

Was the ๐ŸŒ ๐Ÿ“ created? List the contents of ๐ŸŒž.

  $ ๐Ÿ“ƒ

Let's add some ๐Ÿ‘ฏ to ๐ŸŒ. You can do this by simply echoing ๐Ÿ“ฃ ๐Ÿ‘ฏ, and directing it into ๐ŸŒ.

  $ ๐Ÿ“ฃ ๐Ÿ‘ฏ > ๐ŸŒ

To see if ๐ŸŒ now has ๐Ÿ‘ฏ, you have to ask the cat ๐Ÿ˜บ.

  $ ๐Ÿ˜บ ๐ŸŒ

Let's add more ๐Ÿ‘ฏ to ๐ŸŒ, and then count ๐Ÿ’ฏ them! The >> means to add/append to ๐ŸŒ.

  $ ๐Ÿ“ฃ ๐Ÿ‘ฏ >> ๐ŸŒ
  $ ๐Ÿ“ฃ ๐Ÿ‘ฏ >> ๐ŸŒ
  $ ๐Ÿ“ฃ ๐Ÿ‘ฏ >> ๐ŸŒ
  $ ๐Ÿ’ฏ ๐ŸŒ

The ๐Ÿ’ฏ show number of ๐Ÿ‘ฏ, number of lines and number of bytes.

Deleting โŒ

Let's make a second earth, see if it's created and then delete it.

  $ ๐Ÿ‘ˆ ๐ŸŒŽ
  $ ๐Ÿ“ƒ
  $ โŒ ๐ŸŒŽ

Searching ๐Ÿ”

You can search through ๐Ÿ“ƒ by grepping ๐Ÿ”. So to ๐Ÿ” for ๐Ÿ‘ฏ on ๐ŸŒ.

  $ ๐Ÿ” ๐Ÿ‘ฏ ๐ŸŒ

Pipes |

You can send output from one command into another with a pipe |. What does the following do?

  $ ๐Ÿ˜บ ๐ŸŒ | ๐Ÿ’ฏ

The Internet w/ curl ๐Ÿ“ก

  $ ๐Ÿ“ก http://www.baidu.com/

Cut/Replace โœ‚๏ธ

  $ โœ‚๏ธ -i -e 's/๐Ÿ‘ฏ/๐Ÿ‘ซ/g' ๐ŸŒ
  $ ๐Ÿ˜บ ๐ŸŒ

Put some stuff together...

  $ ๐Ÿ“ก  -o ๐Ÿ” http://www.baidu.com/
  $ โœ‚๏ธ -e 's/</๐Ÿ‘ฏ/g' ๐Ÿ” > ๐Ÿ“ฑ
  $ ๐Ÿ˜บ ๐Ÿ“ฑ
  $ ๐Ÿ˜บ ๐Ÿ“ฑ | โœ‚๏ธ -e 's/>/๐Ÿฎ/g' > ๐Ÿ’ป
  $ ๐Ÿ˜บ ๐Ÿ’ป


  $ โœ‚๏ธ -e 's/a/๐Ÿฅž/g' ๐Ÿ’ป > ๐Ÿ“ฑ
  $ ๐Ÿ˜บ ๐Ÿ“ฑ
  $ ๐Ÿ˜บ ๐Ÿ“ฑ | โœ‚๏ธ -e 's/1/๐Ÿคฆโ€/g' > ๐Ÿ’ป
  $ ๐Ÿ˜บ ๐Ÿ’ป

Now create your own commands, and we'll try to guess what they do!

cat ~/๐ŸŒž/๐ŸŒ >> ๐ŸŒ