Category Archives: Linux

Linux Command Line Quick Reference

Note: most commands will require the use of a proceeding su or sudo command to give you Super User privileges. Also referred to as substitute user or switch user.

System Information

date – Display current date and time.
cal – Display the current months calendar.
uptime – Display how long your system has been running.
w – Display who is currently online.
whoami – Display who you are logged in as.
finger user – Display information about the user
uname -a – Display Kernel information. (See Linux: How To Identify The Linux Kernel Version?)
cat /proc/cpuinfo – Display CPU Information.
cat /proc/meminfo – Display memory information.
man command – Display the manual page for a given command.
df -h – Display Disk Usage.
du – Display directory space usage.
free – Display memory and swap usage.
whereis appname – Display potential location of application.
which appname – Display which application will run by default.


ping host – Ping hostname or IP address and display results.
whois domain – Display whois record information for domain.
dig domain – Display DNS information for domain.
dig -x host – Display the reverse lookup of the host.
wget filename – Download a file via url.
wget -c filename – Continue downloading a stopped download.


ps – Display all current active processes.
top – Display all current running processes.
kill pid – Kill process with id pid.
killall proc – Kill all processes named proc (Be careful!).
bg – Display all stopped or background jobs.
fg – Bring the most recent job to the foreground.
fg  n – Bring job n to the foreground.

Software Installation

Install software from source. Change to directory (cd) containing source files and execute the following commands:

make install

Install Software Debian Package Manager:
su dpkg -i pkgname.deb

Install Software RedHat Package Manager:
su rpm -Uvh pkgname.rpm

Install Software Ubuntu apt:
sudo apt-get install pkgname

Working With Files

ls – Display directory listing.
ls -al – Display directory listing, formatted and show hidden files.
cd dir – Change directory to dir.
cd ~ – Change directory to the home directory.
pwd – Display the current present working directory.
mkdir dir – Create a new directory named dir.
rm filename – Delete file filename.
rm -r dir – Delete directory dir.
rm -f filename – Force delete of file filename.
rm -rf dir Force delete of directory dir.(Be Careful!).
cp file1 file2 – Copy file1 to file2.
cp -r dir1 dir2 – Copy dir1 to dir2 (create dir2 if non existent)
mv file1 file2 –  Move or rename file1 to file2.
ln -s file link – Create a symbolic link from link to file.
touch filename – Create file filename or update.
cat > file – Sends standard input to file.
more file – Display contents of file.
head file – Display first 10 lines of file.
tail file – Display last 10 lines of file.
tail -f file – Display contents of file as it gets bigger starting with last 10 lines.

Searching Files

grep pattern files – Search for a pattern in files.
grep -r pattern dir – Search recursively for a pattern in dir.
command | grep pattern – Search for a pattern in the output of a command.
locate file – Find all instances of file.

File Permissions

chmod octal file – Change the permissions of file to octal (user|group|world):

4 – read (r)
2 – write(w)
1 – execute(x)
chmod 777 file – Changes the permissions of file to read, write and execute for all users.
chmod 700 file – Changes the permissions of file to read, write and execute for user only.

File Compression

tar cf file.tar files – Create a tar named file.tar containing files.
tar xf file.tar – Extract the files from file.tar.
tar czf file.tar.gz files – Create a tar with Gzip compression.
tar xzf file.tar.gz – Extract a tar with Gzip.
tar cjf file.tar.bz2 – Create a tar with Bzip2 compression.
tar xjf file.tar.bz2 – Extract a tar with Bzip2.
gzip file – Compress file and rename to file.gz.
gzip -d file.gz – Decompress file.gz back into file.


ssh username@host – Connect to a host as a specific username.
ssh -p port username@host – Connect to a host on a specific port as a specific username.
ssh-copy-id username@host – Add your key to host for username to enable a passwordless login.

Terminal Shortcuts

Ctrl+C – Halts the current command.
Ctrl+Z – Stops the current command, resume with fg in the foreground or bg in the background.
Ctrl+D – Logout of current session.
Ctrl+W – Erases one word in the current line.
Ctrl+U – Erases the whole line.
Ctrl+R – Type to bring up a recent command.
!! – Repeats the last command.
UpArrow – Cycles through all commands previously used in current session.
exit – Log out of current session.

Linux: How To Identify The Linux Kernel Version?

The Kernel version is broken down into three parts:

  1. Major Number
  2. Minor Number
  3. Revision Number

The Current Linux Kernel versions (June 2014) are:

  • 3.14.5 (Stable – Maintained by Greg Kroah-Hartman)
  • 3.15-rc8 (Development – Linus Torvalds)

The first number(3) is the major revision to the Linux Kernel. The second number(14) shows the minor revision. Development Kernels are odd and production kernels are even. Development kernels are not fully tested and can be unstable. Once a development Kernel is thoroughly tested and deemed stable is will be given an even number x.1.x → x.2.x or x.3.x → x.4.x
Since the Linux Kernel is constantly being improved and revised a revision number(5) is added when smaller changes are made.

How to tell which Linux Kernel you are running?
From your Linux Terminal type:

  • uname -r
  • cat /proc/version
  • rpm -q kernel              (If you arte running Red Hat package manager)
  • dmesg | grep Linux
  • ls /boot                           (look for vmlinuz.x.x-x)

I hope this helps explain Linux Kernel versions.

Linux Commands In Windows 8.1

Basic Linux file commands working in Windows 8.1
Some commands have always been the same for both Operating Systems* but now you can use whichever you prefer when working with files. Below are a few common ones that I have verified working in Windows 8.1.

ls, cd*, pwd, mkdir*, rm, cp, mv, touch, cat, ps, head, tail, date*, whoami, finger, uname -a, du, chmod, grep, find -iname, exit*, echo*