Tech Notes

HTML, CSS, JavaScript, PHP and programming for the Web

Unix commands


sudo: Executing Commands with Elevated Privileges

  • Most of the following commands will need to be prefaced with the sudo command if you will be working with directories or files not owned by your account. Please see RootSudofor information on using sudo.

File & Directory Commands

  • pwd: The pwd command will allow you to know in which directory you're located ( pwd stands for "print working directory"). Example: "pwd" in the Desktop directory will show "~/Desktop". Note that the Gnome Terminal also displays this information in the title bar of it's window - see the example screenshot at the top of this page.

  • ls: The ls command will show you the files in your current directory. Used with certain options, you can see sizes of files, when files where made, and permissions of files. Example: "ls ~" will show you the files that are in your home directory.

    • cd: The cd command will allow you to change directories. When you open a terminal you will be in your home directory. To move around the file system you will use cd. Examples:

      • To navigate into the root directory, use "cd /"

      • To navigate to your home directory, use "cd" or "cd ~"

      • To navigate up one directory level, use "cd .."

      • To navigate to the previous directory (or back), use "cd -"

      • To navigate through multiple levels of directory at once, specify the full directory path that you want to go to. For example, use, "cd /var/www" to go directly to the /www subdirectory of /var/. As another example, "cd ~/Desktop" will move you to the Desktop subdirectory inside your home directory.

  • cp: The cp command will make a copy of a file for you. Example: "cp file foo" will make a exact copy of "file" and name it "foo", but the file "file" will still be there. When you use mv that file would no longer exist, but when you use cp the original file stays and a new copy is made.

  • mv: The mv command will move a file to a different location or will rename a file. Examples are as follows: "mv file foo" will rename the file "file" to "foo". "mv foo ~/Desktop" will move the file "foo" to your Desktop directory but will not rename it. You must specify a new file name to rename a file.

    • To save on typing, you can substitute '~' in place of the home directory.

    • Note that if you are using mv with sudo you will not be able to use the ~ shortcut, but will have to use the full pathnames to your files. This is because when you are working as root, ~ will refer to the root account's home directory, not your own.

  • rm: Use this command to remove or delete a file in your directory. It will not work on directories which have files in them (use rmdir instead).

  • mkdir: The mkdir command will allow you to create directories. Example: "mkdir music" will create a music directory.

  • man: The man command is used to show you the manual of other commands. Try "man man" to get the man page for man itself. See the " Man & Getting Help" section down the page for more information.

System Information Commands

  • df: The df command displays filesystem disk space usage for all partitions. " df -h" is probably the most useful - it uses megabytes (M) and gigabytes (G) instead of blocks to report. ( -h means "human-readable")

  • free: The free command displays the amount of free and used memory in the system. "free -m" will give the information using megabytes, which is probably most useful for current computers.

  • top: The top command displays information on your Linux system, running processes and system resources, including CPU, RAM & swap usage and total number of tasks being run. To exit top, press "q".

  • uname -a: The uname command with the -a option prints all system information, including machine name, kernel name & version, and a few other details. Most useful for checking which kernel you're using.

  • lsb_release -a: The lsb_release command with the -a option prints version information for the Linux release you're running, for example:

user@computer:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 6.06 LTS
Release:        6.06
Codename:       dapper
  • ifconfig reports on your system's network interfaces.

Adding A New User

  • "adduser newuser" command will create a new general user called "newuser" on your system, and to assign a password for the newuser account use "passwd newuser".


Share | | Digg | E-mail a link