≡ Menu

50 Most Frequently Used UNIX / Linux Commands (With Examples)

This article provides practical examples for 50 most frequently used commands in Linux / UNIX.

This is not a comprehensive list by any means, but this should give you a jumpstart on some of the common Linux commands. Bookmark this article for your future reference.

Did I miss any frequently used Linux commands? Leave a comment and let me know.

1. tar command examples

Create a new tar archive.

$ tar cvf archive_name.tar dirname/

Extract from an existing tar archive.

$ tar xvf archive_name.tar

View an existing tar archive.

$ tar tvf archive_name.tar

More tar examples: The Ultimate Tar Command Tutorial with 10 Practical Examples

2. grep command examples

Search for a given string in a file (case in-sensitive search).

$ grep -i "the" demo_file

Print the matched line, along with the 3 lines after it.

$ grep -A 3 -i "example" demo_text

Search for a given string in all files recursively

$ grep -r "ramesh" *

More grep examples: Get a Grip on the Grep! – 15 Practical Grep Command Examples

3. find command examples

Find files using file-name ( case in-sensitve find)

# find -iname "MyCProgram.c"

Execute commands on files found by the find command

$ find -iname "MyCProgram.c" -exec md5sum {} \;

Find all empty files in home directory

# find ~ -empty

More find examples: Mommy, I found it! — 15 Practical Linux Find Command Examples

4. ssh command examples

Login to remote host

ssh -l jsmith remotehost.example.com

Debug ssh client

ssh -v -l jsmith remotehost.example.com

Display ssh client version

$ ssh -V
OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003

More ssh examples: 5 Basic Linux SSH Client Commands

5. sed command examples

When you copy a DOS file to Unix, you could find \r\n in the end of each line. This example converts the DOS file format to Unix file format using sed command.

$sed 's/.$//' filename

Print file content in reverse order

$ sed -n '1!G;h;$p' thegeekstuff.txt

Add line number for all non-empty-lines in a file

$ sed '/./=' thegeekstuff.txt | sed 'N; s/\n/ /'

More sed examples: Advanced Sed Substitution Examples

6. awk command examples

Remove duplicate lines using awk

$ awk '!($0 in array) { array[$0]; print }' temp

Print all lines from /etc/passwd that has the same uid and gid

$awk -F ':' '$3==$4' passwd.txt

Print only specific field from a file.

$ awk '{print $2,$5;}' employee.txt

More awk examples: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR

7. vim command examples

Go to the 143rd line of file

$ vim +143 filename.txt

Go to the first match of the specified

$ vim +/search-term filename.txt

Open the file in read only mode.

$ vim -R /etc/passwd

More vim examples: How To Record and Play in Vim Editor

8. diff command examples

Ignore white space while comparing.

# diff -w name_list.txt name_list_new.txt

< John Doe --- > John M Doe
> Jason Bourne

More diff examples: Top 4 File Difference Tools on UNIX / Linux – Diff, Colordiff, Wdiff, Vimdiff

9. sort command examples

Sort a file in ascending order

$ sort names.txt

Sort a file in descending order

$ sort -r names.txt

Sort passwd file by 3rd field.

$ sort -t: -k 3n /etc/passwd | more

10. export command examples

To view oracle related environment variables.

$ export | grep ORACLE
declare -x ORACLE_BASE="/u01/app/oracle"
declare -x ORACLE_HOME="/u01/app/oracle/product/10.2.0"
declare -x ORACLE_SID="med"
declare -x ORACLE_TERM="xterm"

To export an environment variable:

$ export ORACLE_HOME=/u01/app/oracle/product/10.2.0

11. xargs command examples

Copy all images to external hard-drive

# ls *.jpg | xargs -n1 -i cp {} /external-hard-drive/directory

Search all jpg images in the system and archive it.

# find / -name *.jpg -type f -print | xargs tar -cvzf images.tar.gz

Download all the URLs mentioned in the url-list.txt file

# cat url-list.txt | xargs wget –c

12. ls command examples

Display filesize in human readable format (e.g. KB, MB etc.,)

$ ls -lh
-rw-r----- 1 ramesh team-dev 8.9M Jun 12 15:27 arch-linux.txt.gz

Order Files Based on Last Modified Time (In Reverse Order) Using ls -ltr

$ ls -ltr

Visual Classification of Files With Special Characters Using ls -F

$ ls -F

More ls examples: Unix LS Command: 15 Practical Examples

13. pwd command

pwd is Print working directory. What else can be said about the good old pwd who has been printing the current directory name for ages.

14. cd command examples

Use “cd -” to toggle between the last two directories

Use “shopt -s cdspell” to automatically correct mistyped directory names on cd

More cd examples: 6 Awesome Linux cd command Hacks

15. gzip command examples

To create a *.gz compressed file:

$ gzip test.txt

To uncompress a *.gz file:

$ gzip -d test.txt.gz

Display compression ratio of the compressed file using gzip -l

$ gzip -l *.gz
         compressed        uncompressed  ratio uncompressed_name
              23709               97975  75.8% asp-patch-rpms.txt

16. bzip2 command examples

To create a *.bz2 compressed file:

$ bzip2 test.txt

To uncompress a *.bz2 file:

bzip2 -d test.txt.bz2

More bzip2 examples: BZ is Eazy! bzip2, bzgrep, bzcmp, bzdiff, bzcat, bzless, bzmore examples

17. unzip command examples

To extract a *.zip compressed file:

$ unzip test.zip

View the contents of *.zip file (Without unzipping it):

$ unzip -l jasper.zip
Archive:  jasper.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
    40995  11-30-98 23:50   META-INF/MANIFEST.MF
    32169  08-25-98 21:07   classes_
    15964  08-25-98 21:07   classes_names
    10542  08-25-98 21:07   classes_ncomp

18. shutdown command examples

Shutdown the system and turn the power off immediately.

# shutdown -h now

Shutdown the system after 10 minutes.

# shutdown -h +10

Reboot the system using shutdown command.

# shutdown -r now

Force the filesystem check during reboot.

# shutdown -Fr now

19. ftp command examples

Both ftp and secure ftp (sftp) has similar commands. To connect to a remote server and download multiple files, do the following.

$ ftp IP/hostname
ftp> mget *.html

To view the file names located on the remote server before downloading, mls ftp command as shown below.

ftp> mls *.html -

More ftp examples: FTP and SFTP Beginners Guide with 10 Examples

20. crontab command examples

View crontab entry for a specific user

# crontab -u john -l

Schedule a cron job every 10 minutes.

*/10 * * * * /home/ramesh/check-disk-space

More crontab examples: Linux Crontab: 15 Awesome Cron Job Examples

21. service command examples

Service command is used to run the system V init scripts. i.e Instead of calling the scripts located in the /etc/init.d/ directory with their full path, you can use the service command.

Check the status of a service:

# service ssh status

Check the status of all the services.

service --status-all

Restart a service.

# service ssh restart

22. ps command examples

ps command is used to display information about the processes that are running in the system.

While there are lot of arguments that could be passed to a ps command, following are some of the common ones.

To view current running processes.

$ ps -ef | more

To view current running processes in a tree structure. H option stands for process hierarchy.

$ ps -efH | more

23. free command examples

This command is used to display the free, used, swap memory available in the system.

Typical free command output. The output is displayed in bytes.

$ free
             total       used       free     shared    buffers     cached
Mem:       3566408    1580220    1986188          0     203988     902960
-/+ buffers/cache:     473272    3093136
Swap:      4000176          0    4000176

If you want to quickly check how many GB of RAM your system has use the -g option. -b option displays in bytes, -k in kilo bytes, -m in mega bytes.

$ free -g
             total       used       free     shared    buffers     cached
Mem:             3          1          1          0          0          0
-/+ buffers/cache:          0          2
Swap:            3          0          3

If you want to see a total memory ( including the swap), use the -t switch, which will display a total line as shown below.

ramesh@ramesh-laptop:~$ free -t
             total       used       free     shared    buffers     cached
Mem:       3566408    1592148    1974260          0     204260     912556
-/+ buffers/cache:     475332    3091076
Swap:      4000176          0    4000176
Total:     7566584    1592148    5974436

24. top command examples

top command displays the top processes in the system ( by default sorted by cpu usage ). To sort top output by any column, Press O (upper-case O) , which will display all the possible columns that you can sort by as shown below.

Current Sort Field:  P  for window 1:Def
Select sort field via field letter, type any other key to return

  a: PID        = Process Id              v: nDRT       = Dirty Pages count
  d: UID        = User Id                 y: WCHAN      = Sleeping in Function
  e: USER       = User Name               z: Flags      = Task Flags

To displays only the processes that belong to a particular user use -u option. The following will show only the top processes that belongs to oracle user.

$ top -u oracle

More top examples: Can You Top This? 15 Practical Linux Top Command Examples

25. df command examples

Displays the file system disk space usage. By default df -k displays output in bytes.

$ df -k
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1             29530400   3233104  24797232  12% /
/dev/sda2            120367992  50171596  64082060  44% /home

df -h displays output in human readable form. i.e size will be displayed in GB’s.

ramesh@ramesh-laptop:~$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              29G  3.1G   24G  12% /
/dev/sda2             115G   48G   62G  44% /home

Use -T option to display what type of file system.

ramesh@ramesh-laptop:~$ df -T
Filesystem    Type   1K-blocks      Used Available Use% Mounted on
/dev/sda1     ext4    29530400   3233120  24797216  12% /
/dev/sda2     ext4   120367992  50171596  64082060  44% /home

26. kill command examples

Use kill command to terminate a process. First get the process id using ps -ef command, then use kill -9 to kill the running Linux process as shown below. You can also use killall, pkill, xkill to terminate a unix process.

$ ps -ef | grep vim
ramesh    7243  7222  9 22:43 pts/2    00:00:00 vim

$ kill -9 7243

More kill examples: 4 Ways to Kill a Process – kill, killall, pkill, xkill

27. rm command examples

Get confirmation before removing the file.

$ rm -i filename.txt

It is very useful while giving shell metacharacters in the file name argument.

Print the filename and get confirmation before removing the file.

$ rm -i file*

Following example recursively removes all files and directories under the example directory. This also removes the example directory itself.

$ rm -r example

28. cp command examples

Copy file1 to file2 preserving the mode, ownership and timestamp.

$ cp -p file1 file2

Copy file1 to file2. if file2 exists prompt for confirmation before overwritting it.

$ cp -i file1 file2

29. mv command examples

Rename file1 to file2. if file2 exists prompt for confirmation before overwritting it.

$ mv -i file1 file2

Note: mv -f is just the opposite, which will overwrite file2 without prompting.

mv -v will print what is happening during file rename, which is useful while specifying shell metacharacters in the file name argument.

$ mv -v file1 file2

30. cat command examples

You can view multiple files at the same time. Following example prints the content of file1 followed by file2 to stdout.

$ cat file1 file2

While displaying the file, following cat -n command will prepend the line number to each line of the output.

$ cat -n /etc/logrotate.conf
    1	/var/log/btmp {
    2	    missingok
    3	    monthly
    4	    create 0660 root utmp
    5	    rotate 1
    6	}

31. mount command examples

To mount a file system, you should first create a directory and mount it as shown below.

# mkdir /u01

# mount /dev/sdb1 /u01

You can also add this to the fstab for automatic mounting. i.e Anytime system is restarted, the filesystem will be mounted.

/dev/sdb1 /u01 ext2 defaults 0 2

32. chmod command examples

chmod command is used to change the permissions for a file or directory.

Give full access to user and group (i.e read, write and execute ) on a specific file.

$ chmod ug+rwx file.txt

Revoke all access for the group (i.e read, write and execute ) on a specific file.

$ chmod g-rwx file.txt

Apply the file permissions recursively to all the files in the sub-directories.

$ chmod -R ug+rwx file.txt

More chmod examples: 7 Chmod Command Examples for Beginners

33. chown command examples

chown command is used to change the owner and group of a file. \

To change owner to oracle and group to db on a file. i.e Change both owner and group at the same time.

$ chown oracle:dba dbora.sh

Use -R to change the ownership recursively.

$ chown -R oracle:dba /home/oracle

34. passwd command examples

Change your password from command line using passwd. This will prompt for the old password followed by the new password.

$ passwd

Super user can use passwd command to reset others password. This will not prompt for current password of the user.

# passwd USERNAME

Remove password for a specific user. Root user can disable password for a specific user. Once the password is disabled, the user can login without entering the password.

# passwd -d USERNAME

35. mkdir command examples

Following example creates a directory called temp under your home directory.

$ mkdir ~/temp

Create nested directories using one mkdir command. If any of these directories exist already, it will not display any error. If any of these directories doesn’t exist, it will create them.

$ mkdir -p dir1/dir2/dir3/dir4/

36. ifconfig command examples

Use ifconfig command to view or configure a network interface on the Linux system.

View all the interfaces along with status.

$ ifconfig -a

Start or stop a specific interface using up and down command as shown below.

$ ifconfig eth0 up

$ ifconfig eth0 down

More ifconfig examples: Ifconfig: 7 Examples To Configure Network Interface

37. uname command examples

Uname command displays important information about the system such as — Kernel name, Host name, Kernel release number,
Processor type, etc.,

Sample uname output from a Ubuntu laptop is shown below.

$ uname -a
Linux john-laptop 2.6.32-24-generic #41-Ubuntu SMP Thu Aug 19 01:12:52 UTC 2010 i686 GNU/Linux

38. whereis command examples

When you want to find out where a specific Unix command exists (for example, where does ls command exists?), you can execute the following command.

$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

When you want to search an executable from a path other than the whereis default path, you can use -B option and give path as argument to it. This searches for the executable lsmk in the /tmp directory, and displays it, if it is available.

$ whereis -u -B /tmp -f lsmk
lsmk: /tmp/lsmk

39. whatis command examples

Whatis command displays a single line description about a command.

$ whatis ls
ls		(1)  - list directory contents

$ whatis ifconfig
ifconfig (8)         - configure a network interface

40. locate command examples

Using locate command you can quickly search for the location of a specific file (or group of files). Locate command uses the database created by updatedb.

The example below shows all files in the system that contains the word crontab in it.

$ locate crontab

41. man command examples

Display the man page of a specific command.

$ man crontab

When a man page for a command is located under more than one section, you can view the man page for that command from a specific section as shown below.

$ man SECTION-NUMBER commandname

Following 8 sections are available in the man page.

  1. General commands
  2. System calls
  3. C library functions
  4. Special files (usually devices, those found in /dev) and drivers
  5. File formats and conventions
  6. Games and screensavers
  7. Miscellaneous
  8. System administration commands and daemons

For example, when you do whatis crontab, you’ll notice that crontab has two man pages (section 1 and section 5). To view section 5 of crontab man page, do the following.

$ whatis crontab
crontab (1)          - maintain crontab files for individual users (V3)
crontab (5)          - tables for driving cron

$ man 5 crontab

42. tail command examples

Print the last 10 lines of a file by default.

$ tail filename.txt

Print N number of lines from the file named filename.txt

$ tail -n N filename.txt

View the content of the file in real time using tail -f. This is useful to view the log files, that keeps growing. The command can be terminated using CTRL-C.

$ tail -f log-file

More tail examples: 3 Methods To View tail -f output of Multiple Log Files in One Terminal

43. less command examples

less is very efficient while viewing huge log files, as it doesn’t need to load the full file while opening.

$ less huge-log-file.log

One you open a file using less command, following two keys are very helpful.

CTRL+F – forward one window
CTRL+B – backward one window

More less examples: Unix Less Command: 10 Tips for Effective Navigation

44. su command examples

Switch to a different user account using su command. Super user can switch to any other user without entering their password.


Execute a single command from a different account name. In the following example, john can execute the ls command as raj username. Once the command is executed, it will come back to john’s account.

[john@dev-server]$ su - raj -c 'ls'


Login to a specified user account, and execute the specified shell instead of the default shell.


45. mysql command examples

mysql is probably the most widely used open source database on Linux. Even if you don’t run a mysql database on your server, you might end-up using the mysql command ( client ) to connect to a mysql database running on the remote server.

To connect to a remote mysql database. This will prompt for a password.

$ mysql -u root -p -h

To connect to a local mysql database.

$ mysql -u root -p

If you want to specify the mysql root password in the command line itself, enter it immediately after -p (without any space).

46. yum command examples

To install apache using yum.

$ yum install httpd

To upgrade apache using yum.

$ yum update httpd

To uninstall/remove apache using yum.

$ yum remove httpd

47. rpm command examples

To install apache using rpm.

# rpm -ivh httpd-2.2.3-22.0.1.el5.i386.rpm

To upgrade apache using rpm.

# rpm -uvh httpd-2.2.3-22.0.1.el5.i386.rpm

To uninstall/remove apache using rpm.

# rpm -ev httpd

More rpm examples: RPM Command: 15 Examples to Install, Uninstall, Upgrade, Query RPM Packages

48. ping command examples

Ping a remote host by sending only 5 packets.

$ ping -c 5 gmail.com

More ping examples: Ping Tutorial: 15 Effective Ping Command Examples

49. date command examples

Set the system date:

# date -s "01/31/2010 23:59:53"

Once you’ve changed the system date, you should syncronize the hardware clock with the system date as shown below.

# hwclock –systohc

# hwclock --systohc –utc

50. wget command examples

The quick and effective method to download software, music, video from internet is using wget command.

$ wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.1.tar.gz

Download and store it with a different name.

$ wget -O taglist.zip http://www.vim.org/scripts/download_script.php?src_id=7701

More wget examples: The Ultimate Wget Download Guide With 15 Awesome Examples

Did I miss any frequently used Linux commands? Leave a comment and let me know.

Add your comment

If you enjoyed this article, you might also like..

  1. 50 Linux Sysadmin Tutorials
  2. 50 Most Frequently Used Linux Commands (With Examples)
  3. Top 25 Best Linux Performance Monitoring and Debugging Tools
  4. Mommy, I found it! – 15 Practical Linux Find Command Examples
  5. Linux 101 Hacks 2nd Edition eBook Linux 101 Hacks Book

Bash 101 Hacks Book Sed and Awk 101 Hacks Book Nagios Core 3 Book Vim 101 Hacks Book

Comments on this entry are closed.

  • Shantanu Oak November 8, 2010, 3:01 am

    Very useful list.
    But I guess the commands like du, scp and init should be included. I will also like to add that -S with ls will sort on size and -f with rm will forcefully remove files. The commands like shutdown, yum, rpm, whereis and whatis can be excluded.

  • mio November 8, 2010, 5:42 am

    “less” is one of my most useful command. should be part of the list.

  • Madharasan November 8, 2010, 5:48 am

    Hi Ramesh,
    Thank you !!!!

    Hope this article is a Deepavalli treat .

    Very Nice and Informative.

    Please prepare one more treat for Christmas and New year 2011.

  • rameshkumar November 8, 2010, 5:49 am

    Excellent article for beginners like me..thanks..

  • RO November 8, 2010, 8:52 am

    I found this a good set of tips to pass on to a newbie on my team that is supporting a corporate application package, although I had to make the following distinctions for the Solaris servers we work on:

    commands in that list of 50 that do not work in Solaris (without adding extra packages at least):
    • vim (only vi is included, and a much simpler editor than vim)
    • shutdown (only for root Id, so you “should” not be able to use it – do NOT try, if you can for some reason)
    • service – specific to root in Linux
    • free – parts of this command info can be had from several Solaris commands: vmstat, iostat, mpstat
    • top – use prstat in Solaris
    • mount – another one only for root (“superuser”) Id
    • passwd – our organization uses NIS for this kind of user management, and only via special requests
    • whereis, locate – use “which” in Solaris, although not as powerful
    • mysql – not installed
    • yum, rpm – RedHat Package Manager tools, so not relevant for Solaris
    • ping – available as /user/sbin/ping, and with significant differences from the Llinux version the linked tutorial shows, so check the Solaris ping man page ( “ man ping “) to see its syntax – very useful for troubleshooting connectivity issues.
    • date – only root Id can change the date/time – normally one uses date command to view it, and there are many format options, so check “man date” and “man strftime “ for that formatting info.

    I think distinguishing at least superuser-specific commands in a separate list might be helpful, as well as Linux-specific commands like “free” (thinking I might see if I can make an alias to massage vmstat, iostat, and some others for a similar output – would be useful).


  • Geoff November 8, 2010, 9:39 am

    Great list – thanks!
    I would add:
    nmap -sP nnn..nnn.nnn.0/24
    There might be a better way, but I use it all the time for a list of ip addresses in use.

  • Shashi November 8, 2010, 10:42 am

    Very useful list – Thanks

  • Earl Jenkins November 8, 2010, 11:41 am

    You missed my favourite usage of ps:

    ps -ef | grep procname

    Filters the ps output based on the given procname — very useful to see if a particular process is running, or to find it’s pid. (Similar functionality is available via pgrep as well.)

    But this is a handy list, nonetheless. I suspect it will be showing up in a lot of Google searches.

  • Hamilton Jimenez November 8, 2010, 12:59 pm

    This is a really nice article for everyone. I sent the link to every friend who know Unix/Linux. Thanks a lot!

  • ignazioc November 8, 2010, 3:09 pm


  • dj November 8, 2010, 3:31 pm

    Nice list.
    Possible additions:
    nano (in vi category)
    sudo (in su category)
    apropos (in man category)
    who, whoami,groups
    exit or ctrl-d
    hexdump -C

    A side-note on `less`. If the user finds the need to edit the file they are viewer, they could use the `v` command. I do see in the man-page it says, “The following four commands may or may not be valid, depending on your particular installation.”.

  • Teresa November 8, 2010, 6:05 pm

    A really helpful command that I use is ‘watch’.
    Instead of writing a while loop to run a command repeatedly, use watch.
    It runs the command you specify every 2 seconds (default interval). Running the command with ‘-d’ highlights changes between each refresh.

  • Wuzzy November 16, 2010, 5:03 pm

    In case you don’t want tar to list the files it processed (because you want a clean terminal ;-)), simply remove the letter “v” (“v” for “verbose” [not vendetta ;-)]) from the options:
    for creating a tar, use “tar cf ” instead of “tar cvf ”
    for extracting a tar, use “tar xf ” instead of “tar xvf ”
    for viewing a tar use “tar tf ” instead of “tar tvf “

  • krushna December 28, 2010, 7:28 am

    Thanks, It is very very informative .Examples are awesome.


  • sathiya January 1, 2011, 6:35 am

    Test comment, please remove.

  • tom January 16, 2011, 9:59 pm

    Title of this article is kinda inaccurate. Several examples aren’t so much “UNIX/Linux” as much as they are “GNU tools”.

    Also, the use of “ssh -l ${USER}” is kind of an archaic usage style. Using “ssh $USER@${HOST}” (or “scp $USER@${HOST}”) is a bit more common (at least in production UNIX or Linux) shops and has the value of saving you a couple keystrokes.

  • Vaishali February 8, 2011, 3:28 am

    Nice list

  • anonymous February 8, 2011, 10:57 pm

    Not that “service” command is a Red Hat command. For any Unix or Linux (including Red Hat) is via:
    /etc/init.d/sshd status
    /etc/init.d/httpd start or /etc/init.d/apache2 start
    /etc/init.d/nfs restart
    /etc/init.d/mysdl stop
    As already mentioned since these act upon Daemons (or services) you need to be username root (or use sudo).

  • BHARATH March 9, 2011, 11:45 pm


  • joey March 24, 2011, 2:07 pm

    very good tools for linux apprentices…

  • Shelly May 18, 2011, 9:27 am

    Thanks Ramesh! This is a very useful list for new Linux users to use for reference. Really gets you up to speed quickly!

  • highlandham June 14, 2011, 3:38 pm

    Very useful to climb the cli knowledge ladder.

  • AR June 18, 2011, 12:19 pm

    1. tutorial on chkconfig?
    2. how to set up a temporary and a permanent route?
    3. how to check SAN?

    Thank You!!

  • Hima June 23, 2011, 7:17 am

    Thanks for providing all useful commands as a single collection

    Thank U Sir,

  • joel August 1, 2011, 3:40 am

    thanks very very very much please keep the good work going
    am so a beginner in linux for i am a oracle11g student those command are real helping me. please i would like to have more pleaseeeeeeeeeeeee in my email thanks alot

  • eliyas September 7, 2011, 6:34 am

    Excellent! Very useful commands for me.TQ

  • Nalaka September 12, 2011, 9:35 pm

    Dear Ramesh,
    Pls clarify, the way how can i create a descending order file(upon numeric column), where there are many columns in the lst file.

  • Another Brown Man September 20, 2011, 2:56 pm

    You should include print commands like lpr, lpoptions, lpstat too

  • Dave AKA "8" October 13, 2011, 2:27 am

    Thanks for a really great tute.
    I first learned to program Miniwaft via punchcards (Pascal), in 1974, but didnt like command lines, so never got round to looking at ‘nix, or prompts.
    You helped me take the first steps.
    I really wanted to say thank you for writting such a great tutorial.

    Any chance of NMAP, Print, Whois topics, please
    Also, a litte tute on switches would be awesome.

  • Mihai October 15, 2011, 8:57 am

    Super useful especially for a beginner in linux like MEEEEEEEEEEEEE 😀
    Great post and thank you for your effort to create it
    It’s really useful

  • John November 10, 2011, 10:42 am

    Great list, I’m in college and taking a few linux admin classes, and my teacher was trying to do a lesson on Crontab, but for whatever reason couldn’t remember how to do it. I looked it up on here and was able to look smart in front of the whole class 😉

  • Asif Bin Qadir November 18, 2011, 11:53 pm

    Profound Regards & Thank you so much….

  • Stefan November 25, 2011, 8:20 am

    Don’t forget the cut command.

    cat /etc/passwd | cut -d: -f6

    for example.

  • Bob Kraus December 2, 2011, 1:22 pm

    What about the grep command? Amazingly powerful and helpful.
    Thanks for all the other examples

  • bob kraus December 2, 2011, 3:02 pm

    Sorry about the previous grep comment — it was at the top of your 50 and I missed it. Dooh!

  • prabinseth December 7, 2011, 3:32 am

    i think it should be
    tar -cvf archive_name.tar dirname/

    instead of
    tar cvf archive_name.tar dirname/

    please correct me if i am wrong.

  • RO December 7, 2011, 12:02 pm

    Re tar options format from the man page:

    The first argument to tar should be a function; either one of the letters
    Acdrtux, or one of the long function names. A function letter need not
    be prefixed with “-”,

    I have not used a dash prefix for a long time (maybe since it is not allowed (?) in Solaris version, which is what I use more than Linux for work like that).

  • vinayak January 2, 2012, 3:40 am

    thanks you its very helpful,

  • sukhbir January 19, 2012, 5:39 am

    Great Job!!

  • MYZJ forever... January 30, 2012, 3:46 am

    thanks very much…

    very excellent!!!!

  • Munish February 2, 2012, 10:20 pm

    well done

  • foyufugfogfopu February 3, 2012, 12:13 am

    great help

  • chandrashekar February 7, 2012, 2:14 am

    too good, frehsers can learn many things from this

  • hemant February 7, 2012, 10:24 pm

    thanks very much…

    my – its very helpful,

  • shesh nath February 9, 2012, 11:20 pm

    this is very helpful suite according to me

  • Chamanlal February 17, 2012, 9:34 am

    U r not a beginner bro..

  • moses chisanga February 23, 2012, 8:37 am

    This is very good., am a bigginer but i know that very soon will be very far

  • Ramesh Velauthem March 9, 2012, 6:32 am

    Really Very Usefull Commends

  • pubudu March 18, 2012, 9:55 am

    Thanks Bro..awesome article very useful

  • Tb March 19, 2012, 1:38 am

    this is awsome for begineers and thanks for that.

  • abhi March 22, 2012, 3:17 pm


    Nice list. very helpful.

    Prabin seth,

    you are right.

  • sanvi March 30, 2012, 4:03 am

    sudo command

  • moumita April 4, 2012, 2:23 am

    I have a question.How can I construct a pipe to execute the following?
    Output of who should be displayed on the screen with value of total number of users who have logged in
    displayed at the bottom of the list.


  • Rajendeer April 9, 2012, 2:44 am


  • pathum April 9, 2012, 2:59 am

    nice post i am really lucky to read this post,thanks….

  • Shradha April 9, 2012, 12:53 pm

    too good,getting more infornation,Thx a lot

  • Welly April 26, 2012, 9:06 pm

    thanks, really helpful.

  • Aslam May 3, 2012, 6:59 am


  • Vijay May 13, 2012, 1:40 am

    Very good explanation with examples. Can you provide just brief explanation about command eg, awk what is mean by awk ? (remembering purpose)

    Thank you!

  • Ashok May 14, 2012, 10:50 am

    Thank u very much…

  • Prr Suresh May 24, 2012, 7:03 am

    Very useful to beginners like me. You might have included vim editor commands with its useful options and its subcommands

  • Vivek May 27, 2012, 5:49 pm

    Hi, Does anyone know how I can install UNIX on my laptop to practice unix commands?


  • Elex June 1, 2012, 1:11 am

    @vivek – Install one of the linux distribution on your system. Ubuntu will be good for you.
    If you want dual boot, Install ubuntu with WUBI that is “windows based ubuntu installer”.
    If you do not want dual boot, install virtual box on your windows and install ubuntu into it. You can find free ubuntu iso file on ubuntu-website.

  • Wes June 8, 2012, 1:36 pm

    A good reference. Thanks!

    If you had links to each command on an index at the beginning, it would make it easier to drill down to each command.

  • b2 June 9, 2012, 9:24 pm

    hmmm,,,really nice collection for beginners…!!!

  • meena June 12, 2012, 11:33 pm

    & command, nice command using linux with example

  • charan nm June 22, 2012, 6:39 am

    very usefull

  • Ashok June 27, 2012, 7:03 am

    Its amazing, very useful to me.. Thank u so much

  • Anonymous June 27, 2012, 11:14 pm

    Hi Ramesh

  • Mikkh July 3, 2012, 2:04 pm

    Yum and rpm only really apply to Red Hat/Fedora or rpm distributions – shouldn’t really be in this list IMO unless you also include the equally common apt for Debian distributions, emerge for Gentoo etc etc.

    A command I find useful is uname for finding out various bits of system info but mostly by me for what kernel is currently installed

    uname -r – display kernel number installed

    uname -a – display all uname info in one string

    uname -h – help on all switches available

  • sanjeev July 5, 2012, 5:54 am

    very nice collection for beginners………

  • david July 9, 2012, 7:22 am

    great collection. thanks alot

  • Ebby July 10, 2012, 3:17 am

    hi, Could please help me in getting the UNIX code to display a message box if the file size is 85% full?

  • Ramesh July 17, 2012, 3:23 am

    awesome bro.

  • Yogesh Choudhary July 19, 2012, 1:00 pm

    Thank,it’s very help for freshers…

  • seyi July 23, 2012, 8:20 pm

    Work well done.
    I wish to know if there is a command that can be used to increase the space allocated to an application (e.g a simulator). Help with it.

  • Aravind Reddy Kaithy July 25, 2012, 8:59 am

    Very good list, update more..

  • satish September 6, 2012, 12:58 pm

    thank you so much sir……………….

  • OM PRAKASH SINGH September 9, 2012, 1:19 pm

    Hi Dear
    I found these commands are very useful and now I am studying. Actually where I am working there Linux, AIX6 and Solaris 10 server is used. I wanted to know how to connect tata photon in Red hat linux 5. Please help me. I shall remain thankful to
    you forever.

  • pommuraj September 11, 2012, 10:22 pm

    thank you.

  • Ramachandra September 12, 2012, 1:29 am

    It is very use useful to all basic level unix guys……..Good

  • Durjoy September 27, 2012, 12:01 am

    Thank U So much……………. It is very useful to us…. More information expected….

  • Ramesh September 27, 2012, 10:32 am

    Thanks a lot. If you write another article, please include the below commands.

    nslookup, dig, host

  • waleed butt October 11, 2012, 12:44 am

    this is very useful..i learn many commands of linux from this.Thanx

  • snsn October 16, 2012, 5:28 am

    Thanks a lot……….

  • vinayak October 17, 2012, 5:26 am

    More useful commands:

  • MMR October 29, 2012, 10:14 pm

    Great Collection


  • farhad November 2, 2012, 12:46 am

    thanks. very good and usefull

  • Subrat N November 15, 2012, 10:45 am

    Really, Great Collection……….!!!
    Keep it up…

  • Rahul SIngh November 28, 2012, 1:15 am

    how to search in .tgz file without untar

  • Hareesh December 10, 2012, 5:54 am

    very useful for us…………

  • Green December 17, 2012, 6:36 am

    Hi Im new for unix….
    Can any one help me out how the sed and awk command working in the example 5 and 6 to get reverse order and Remove duplicate lines using awk.

  • rajendar December 19, 2012, 3:43 am

    i want to know the command for ‘lm’

  • sameer December 24, 2012, 3:02 am


    Thank you for posting useful commands.

  • mahesh bomble January 4, 2013, 4:34 am

    A post for beginers..

  • riten January 8, 2013, 3:54 am

    pls send me how to create log file(tape wirrten is normal file, normal file format only not tar file format)

  • ismail January 10, 2013, 1:02 pm

    ‘pwd’ print working directory

  • tulasi January 21, 2013, 5:01 am

    thank you
    very useful

  • ramac January 23, 2013, 11:27 pm

    very useful & thanks

  • Anoop January 24, 2013, 5:47 pm

    Excellent list .Thank you

  • Corbeaux January 26, 2013, 9:57 pm

    These are often useful to me:
    ps -fu user_name
    kill `pidof process_name`
    ll -tr `locate file_name`
    rsync -avzp -e ssh /local/path/file username@remote_server:/remote/path/.

  • riten January 28, 2013, 4:29 am

    pls anyone write commond how to create log file (text file), file written by normal format in 3592 tape.

  • sinjish January 29, 2013, 4:55 am

    Good …really helpful….

  • shresta February 4, 2013, 5:42 am

    thanks a lot it helped me:-)

  • amit February 5, 2013, 8:40 am

    1.for replacement of string in single file
    2. for replacemnt of stirng without opening the file

  • Adam February 7, 2013, 8:37 am

    if you include rpm and yum, how about apt/dpkg and pacman?

  • octopus February 11, 2013, 6:07 pm

    another really common one:

    # ln -s target /path/to/link/to/

  • riten February 11, 2013, 11:56 pm

    Mutiple files write in tape how to create log file

  • Milan February 14, 2013, 12:54 am

    Good site for learning a gist of commands.

  • sudhakar reddy February 15, 2013, 5:40 am

    Really this site helps us a lot ..!

  • raj February 25, 2013, 11:45 am

    very very imp and usefull commands thank you

  • Harikrishna February 26, 2013, 11:38 pm

    Thanks for thinking and sharing knowledge about collection of things required for Unix user.

  • Ravi March 3, 2013, 12:41 am

    thankyou very much dude ………this really help me in making my college assignment…………….thankyou once again

  • deepak March 6, 2013, 11:09 am

    Very precise and useful like me beginners. Want to see more commands.

  • pGwtech March 7, 2013, 12:59 pm

    A simple thank you.

  • Anonymous March 8, 2013, 9:06 am

    list is awesome. Thank you

  • Shailendra March 10, 2013, 3:34 pm

    It’s ok not bad for beginer

  • Neeraj March 13, 2013, 1:02 am

    i m new, this may help me i think, I would like to know the similarity of windows / dos commands with linux / unix commands.

    It would be helpful to those who want to use linux in place of windows / dos.

  • siva sankar vara prasad March 15, 2013, 5:40 am

    it is so nice & good for new lernars

  • A.Nagaraju March 23, 2013, 1:11 am

    good !

  • Krishna March 29, 2013, 12:35 am

    Good “

  • meenu tiwari April 14, 2013, 2:01 am


  • Aditya Rajawat April 24, 2013, 3:43 am

    Good list…

  • Deep April 26, 2013, 10:12 pm

    This is a really nice article for everyone. I sent the link to every friend who know Unix/Linux. Thanks a lot!

  • Deep April 26, 2013, 10:13 pm

    This is a really nice article for beginners. Thanks

  • Mahesh May 8, 2013, 3:46 am

    This is very help full for beginners,Keep on posting few more.

  • Subba Reddy May 10, 2013, 2:12 am

    Good Work , very helpful to Freshers.

  • dharamvir May 15, 2013, 3:54 am


  • Anju May 16, 2013, 2:28 am


  • Samah May 16, 2013, 2:54 am

    I am a beginner, this is really very helpful , thank you.

  • Tarakraj bist May 18, 2013, 8:49 pm

    this is helpful for me

  • KAnagaraj May 19, 2013, 6:49 am

    How can i install exe file in linux (for ex-NHM Writer 1511.exe)

  • Curt May 22, 2013, 6:37 am

    Thanks for the very useful information.
    I’m currently trying to grasp the ‘find’ command.
    I’d like to see an explanation and examples.
    ‘man find’ is a huge beast and mostly incomprehensible to someone like me.

  • Curt May 27, 2013, 12:30 pm

    Oh! You’ve already written it.
    Thanks again.

  • Naresh July 10, 2013, 6:12 am

    Good document along with good examples.

  • Priyabrata Karan July 18, 2013, 1:42 pm

    i m really impressed with this type question answer… thanx a lot

  • pavan July 25, 2013, 3:45 am

    thank a lot ,,,,,,, this is really helpful…

  • raja July 30, 2013, 3:05 am

    very nice

  • andy August 4, 2013, 8:57 am

    very helpful !!! Cool stuff!!

  • storm August 6, 2013, 3:55 am

    >>Good Job…

  • DIWAKAR August 8, 2013, 11:03 am


  • rasedul islam August 21, 2013, 1:15 pm

    very good.

  • faizil kovai August 26, 2013, 1:00 am

    very good
    Thank you very much

  • kannan September 5, 2013, 5:00 am

    nice job thanks

  • Subhash S Bobade September 5, 2013, 9:25 am

    Very nice artical , If possible please provide some new and useful command(tricky) which may ask in interview.

    Thank You.

  • tejas September 6, 2013, 1:24 pm

    nice. best exmple

  • pooja September 16, 2013, 4:05 am

    very good job….thank u

  • Chuck Nunez September 18, 2013, 9:50 am

    Your website is fantastic. I’m just getting familiar with Linux and the resources here are excellent.

    Have you considered adding a a “printer friendly” button to the site? When I PDF articles so I can highlight and save them, I can’t copy/paste from the resulting PDF into a notes document. The paste buffer puts unintelligible characters into the document.


  • zeelan September 21, 2013, 7:25 pm

    thank you so much …. it helps lot 🙂

  • Ruth Yehle September 23, 2013, 5:00 pm

    I am looking to attach a document listed as /home/ruth/documents on the linux computer built by my son Nathan Yehle of Madison WI (runs the UW main computer but did not teach me how to attach my documents to share them in an email). Perhaps i could retype the letter and send it on. Ruth Yehle

  • megavannan September 27, 2013, 2:16 am

    Its good to learners

  • kiran September 27, 2013, 5:02 am

    Very useful…………….. Thanks to Ramesh

  • Neelu October 1, 2013, 5:05 am

    Very useful. Thanks Ramesh.

  • GUruraj October 5, 2013, 12:44 am

    Awesome , very good article for begginiger

  • john October 7, 2013, 1:37 am

    very useful, thanks a lot for sharing your experiences .so blessing for me .

  • Pavan October 14, 2013, 5:14 am

    Awesome ! Thanks a lot mate

  • jagruti October 17, 2013, 3:48 am

    Nice list Thanks. 🙂

  • mrunali October 17, 2013, 3:49 am

    Nice list Thanks. 🙂

  • chaitali October 17, 2013, 3:50 am

    good one. Thanks

  • shashi October 22, 2013, 7:35 am

    Really good.

  • ckajua-US-guru October 24, 2013, 12:47 pm

    Even an expert has to start somewhere – as a beginner or later at the intermediate level!
    Thank you for sharing knowledge through this blog. Many people will benefit from it. In Solaris, you can count the number of files in your CURRENT directory with the following commands:
    ls | wc -l
    ls -l | grep ^[^d] | wc -l
    find ./ -type f | wc -l
    ls -F | grep -v -e “/” -e “@” | wc -w
    ls -F | grep -v “/” | wc -w

    You can count the number of occurrences of a word in a file within your CURRENT directory by using the following command:
    cat ./file-name | grep -v word-to-search | wc -w

  • Flott October 27, 2013, 12:31 pm

    Hey before I even try out the tutorials, just wanted to say thanks for putting up such a brilliant site. Great work.

  • Jim Branden October 31, 2013, 6:38 am

    Thank you for a very helpful list. Please direct me to the source of explanations of message content to interpret these two commands:
    tail -n 20 /var/log/syslog
    tail -n 20 /var/log/messages

    I’m trying to debug a script to set static IP with two zones for Apache and my resolv.conf files.

    Thanks for your help. Jim

  • arun kumar November 13, 2013, 6:54 am

    thanx,it is very helpful to recapsulate linux command.add more command ,such as how to delete copied iteams of group?

  • Gumnos November 17, 2013, 7:16 pm

    While a good example of “xargs”, you can simplify “cat url-list.txt | xargs wget –c” to just be “wget -c -i url-list.txt” since the “-i” argument to wget tells it to read the URLs from a file. I use this regularly.

  • Dirce November 20, 2013, 8:21 pm

    Thank you. Your summaries are very useful.

  • Rahul More December 9, 2013, 12:39 am

    Very Nice ..

  • sandeep December 10, 2013, 7:32 am

    very usefull commands

  • parameswara rao December 11, 2013, 5:54 am

    please update vmstat and cpio commands

  • Sohil Memon December 12, 2013, 7:27 am

    Can you please explain “grep” and “sed” in detail. As I know, grep and sed has the long directory of commands with different combinations and I want to know how to represent and use it in “Shell Script”.

  • prasad December 18, 2013, 4:22 am

    Hi Ramesh,

    I guess, the comand to To uncompress a *.bz2 file should be bunzip.

    its mistakenly written as : bzip2 -d test.txt.bz2

  • rahul January 4, 2014, 6:27 am

    very nice ,very helpful.. 🙂

  • Raja Sekhar January 7, 2014, 4:24 am

    I appreciate ur work..Knowledge should be sharable as u did now..

  • Shubham Agarwal January 18, 2014, 6:24 am

    Very helpful…

    Thanks a lot…

  • Umesh Mankar January 30, 2014, 10:33 pm

    Its very helpful … thanks Ramesh

  • Jalal Hajigholamali February 4, 2014, 11:25 am


    Very useful article..

  • Sumit February 13, 2014, 11:18 am

    good commands,its really helpful for beginers

  • Alok February 20, 2014, 4:09 am

    Have Some More Commands:-
    cd ../..

  • Krizalys February 20, 2014, 9:29 am

    Very realistic list!
    Another indispensable “command” though: gcc 🙂

  • PN.Lavanna February 21, 2014, 4:39 am

    Very use full commands all r using this commands thank u very much
    we can u use lot of commands in real time projects

  • kanade rashmi February 22, 2014, 12:05 am

    very very useful command

  • Mohsin Khan February 22, 2014, 12:06 pm

    This command is most usefull……………………..

  • Gowri Shankar February 25, 2014, 1:04 am

    After reading your site.. I am feeling Some Unix power i got it….

  • monal March 12, 2014, 11:35 pm

    its very helpful………….

  • Dinesh March 13, 2014, 1:42 am

    Great Work Buddy !!!. Excellent article. Very very useful to beginners. Keep Rocking.

  • Nilesh March 17, 2014, 7:03 am

    Nice , Thank you…

  • nav March 21, 2014, 4:42 am

    nice one

  • Megha March 26, 2014, 4:34 am

    Really helpful for new learners.Great work.

  • suesh March 28, 2014, 1:38 am

    very helpful for beginner.

  • soufiane April 4, 2014, 4:46 am

    very nice.

  • shakir April 14, 2014, 12:15 pm

    Great work done ……!! Thank you very much…. 🙂

  • subhani April 25, 2014, 1:02 am

    hi sir

    its very helpful article to the learners of linux and personally i feel good and clear about the important linux commands

  • gopalreddy April 30, 2014, 1:14 am

    Great Stuff

  • dheeraj reddy May 1, 2014, 12:55 am

    Awesome… These are very much useful to me.

    Thanks buddy

  • Rabindar kewat June 4, 2014, 3:41 am

    Good job.that is helpful for newer

  • Athira June 23, 2014, 3:29 am

    Good……….It’s very useful for begineers in linux…thanks to the effort made…looking for such kind of documents.

  • Adnan June 29, 2014, 4:10 pm

    That was nice stuff buddy. keep it up.

  • reddy July 3, 2014, 10:42 am

    its Very nice

  • dario matias July 14, 2014, 7:03 pm

    Super helpful article, thanks very much!

  • Gajanan August 6, 2014, 1:21 am

    Hi Ramesh,
    Another usefull command to replce the string in VI editior
    :%s/search the word to be repalce/the word which needs to replace/g