Skip to main content

Command Line Crash Course

A quick introduction to the linux command line and frequently used commands.

Paths

NOTE:

ThereDo arenot fullupdate pathsthis andpage. partialThis pathspage inis linux.soft These behave similarlinked to windowsIT and- otherSysadmin OSs

Basic Common Commands

Here are some basic commands in linux that most people will want to use

cd <directory>

Change directories.

  • cd . does not do anything
  • cd .. takes you up a directory
  • cd ~ takes you back to your home directory
amdhome@biostats:~$ cd /srv/shiny-server/spins-abcd/
amdhome@biostats:/srv/shiny-server/spins-abcd$ cd .
amdhome@biostats:/srv/shiny-server/spins-abcd$ cd ..
amdhome@biostats:/srv/shiny-server$ cd ~
amdhome@biostats:~$

pwd

Print working directory: prints the current folder you are in

amdhome@biostats:~$ pwd
/home/amdhome

ls

List files and folders in the current directory You can also specify a full or partial path to print that directories files/folders instead You can append -al for more information on the files

amdhome@biostats:/srv/shiny-server$ ls
index.html  sample-apps  spins-abcd

amdhome@biostats:/srv/shiny-server$ ls -al
total 12
drwxr-xr-x 3 root root 4096 Jun 13 13:37 .
drwxr-xr-x 3 root root 4096 Jun 13 12:41 ..
lrwxrwxrwx 1 root root   38 Jun 13 12:41 index.html -> /opt/shiny-server/samples/welcome.html
lrwxrwxrwx 1 root root   37 Jun 13 12:41 sample-apps -> /opt/shiny-server/samples/sample-apps
drwxr-xr-x 2 root root 4096 Jun 13 14:07 spins-abcd

mv <source> <destination>

Move file/folder. Both You also use this to rename things

amdhome@biostats:~$ ls
app.R

amdhome@biostats:~$ mv app.R app2.R
amdhome@biostats:~$ ls
app2.R

amdhome@biostats:~$ mv app2.R /tmp/
amdhome@biostats:~$ ls /tmp
app2.R

cp <source> <destination>

Copies files. You can specify -r ifIf you want to copychange directoriesthe contents of this page, please change it on that page instead.


rm <target>

Removes files. You can append -r to remove directories{{@18}}


mkdir <target>

Creates a folder


sudo

Sudo is a special command that lets you run commands with elevated (root) permissions. All you have to do is put sudo at the beginning of a command. An administrator must have already granted you sudo rights in order to use this command

Exception

The only exception to this is cd. This is because for most commands that you run, you are telling your shell (command line/terminal) to run a program. sudo is a program that will run another program with elevated permissions. The cd command is technically not a program, but a command to tell your shell to change state. Because cd is not a program it can not be sudo-ed.

If you need to cd to a directory that requires elevated permissions, you can just become root by using the command sudo -i:

amdhome@biostats:~$ sudo -i
root@biostats:~$

Do be careful of any action taken while as root or when running with sudo as many sanity checks are bypassed when using linux as root.