Linux Essentials

  • pwd: Print current working directory (where am I?)
  • ls: File listing
  • ls –l: Detailed file listing, including permissions
  • cd: Change directory
  • chmod: Change file permissions
  • echo: Print something to the terminal
  • more: Show contents of a text file
  • nano: Text editor
  • man: Documentation on any Unix command

What directory am I currently in?

$ pwd
 
/Home/Users/kmazouzi

Create a directory named test_1

$ mkdir test_1
$ ls
 
test_1

Change into that directory, and verify that we are there.

$ cd test_1
$ pwd
 
/Home/Users/kmazouzi/test_1

Return to your home directory: cd with no arguments

$ cd

List of well known editors:

  • vi/vim: lightweight, complex, powerful, difficult to use
  • emacs: heavyweight, complex, powerful, difficult to use
  • nano: possibly the simplest editor to use

To edit a file:

$ nano filename

Bash is a shell scripting language.

  • It is the default scripting language that you have at the terminal.
  • I.e: You are already using it.
  • We will take this command:
$ echo "Hello World!"
 
Hello World!

create a file named hello.sh containing a single line:

echo "hello world!"
$ nano hello.sh

Exit nano. Verify the contents of the file:

$ more hello.sh
 
echo "hello world!"

Then invoke it using the bash interpreter:

$ bash hello.sh
 
Hello World!

Hello world script

We can run automatically the script without calling bash. The #! line tells the system to automatically run bash.

$ nano hello.sh
#!/bin/bash
 
echo "hello world”

Files have properties:

  • Read, Write, Execute
  • Three different types of user: owner, group, everyone

To take a script you have written and turn it into an executable program, run “chmod +x” on it

$ ls -al 
-rw-rw-r--   1 kmazouzi staff   33 avril 19 10:48 hello.sh
$ chmod +x hello.sh
$ ls -al 
-rwxrwxr-x   1 kmazouzi staff   33 avril 19 10:48 hello.sh

Execute the hello world script

$ ./hello.sh
 
Hello World!