Command Line Cheat Sheet

Here is a list of very useful commands for your Linux Terminal. The commands listed here are not Distro specific you will be able to use them on any Linux install be it Arch, Fedora, Ubuntu, Debian, Knoppix, there is hundreds of linux command and the ones listed here are very useful for everyday terminal use!

Bash Commands

Command Description
uname -a Show system and kernel
head -n1 /etc/issue Show distribution
mount Show mounted filesystems
date Show system date
uptime Show uptime

Bash Shortcuts

Command Description
CTRL-c Stop current command
CTRL-z Sleep program
CTRL-a Go to start of line
CTRL-e Go to end of line
CTRL-u Cut from start of line
CTRL-k Cut to end of line
CTRL-r Search history
!! Repeat last command
!abc Run last command starting with abc
!abc:p Print last command starting with abc
!$ Last argument of previous command
ALT-. Last argument of previous command
!* All arguments of previous command

Bash Variables

Command Description
env Show environment variables
echo $NAME Output value of $NAME variable
export $NAME=value Set $NAME to value
$PATH Executable search path
$HOME Home directory
$SHELL Current shell

Directory Operations

Command Description
pwd Show current directory
mkdir dir Make directory dir
cd dir Change directory to dir
cd .. Go up a directory
ls List files

ls Options

Command Description
-a Show all (including hidden)
-R Recursive list
-r Reverse order
-t Sort by last modified
-S Sort by file size
-l Long listing format
-1 One file per line
-m Comma-separated output
-Q Quoted output

Nano Shortcuts

Command Description
Ctrl-R Read file
Ctrl-O Save file
Ctrl-X Close file
Cut and Paste
ALT-A Start marking text
CTRL-K Cut marked text or line
CTRL-U Paste text
Navigate File
ALT-/ End of file
CTRL-A Beginning of line
CTRL-E End of line
CTRL-C Show line number
CTRL-_ Go to line number
Search File
ALT-W Find next
CTRL-\ Search and replace

More Information on nano can be found at

Search Files

Command Description
grep pattern files Search for pattern in files
grep -i Case insensitive search
grep -r Recursive search
grep -v Inverted search
grep -o Show matched part of file only
find /dir/ -name name* Find files starting with name in dir
find /dir/ -user name Find files owned by name in dir
find /dir/ -mmin num Find files modifed less than num minutes ago in dir
whereis command Find binary / source / manual for command
locate file Find file (quick search of system index)

Process Management

Command Description
ps Show snapshot of processes
top Show real time processes
kill pid Kill process with id pid
pkill name Kill process with name name
killall name Kill all processes with names beginning name

File Permissions

Command Description
chmod 775 file Change mode of file to 775
chmod -R 600 folder Recursively chmod folder to 600
chown user :group file Change file owner to user and group to group

File Permission Numbers

The first digit is the owner permission, the second the group and the third for everyone. Calculate each of the three permission digits by adding the numeric values of the permissions below.

Command Description
4 read (r)
2 write (w)
1 execute (x)

File Operations

Command Description
touch file1 Create file1
cat file1 file2 Concatenate files and output
less file1 View and paginate file1
file file1 Get type of file1
cp file1 file2 Copy file1 to file2
mv file1 file2 Move file1 to file2
rm file1 Delete file1
head file1 Show first 10 lines of file1
tail file1 Show last 10 lines of file1

Screen Shortcuts

Command Description
screen Start a screen session.
screen -r Resume a screen session.
screen -list Show your current screen sessions.
CTRL-A Activate commands for screen.
CTRL-A c Create a new instance of terminal.
CTRL-A n Go to the next instance of terminal.
CTRL-A p Go to the previous instance of terminal.
CTRL-A " Show current instances of terminals.
CTRL-A A Rename the current instance.

More Information on screen can be found at