Operations 11 min read

10 Essential Linux Commands Every Developer Should Master

This article introduces ten fundamental Linux commands—pgrep, pstree, bc, split, nl, mkfifo, ldd, col, xmlwf, and lsof—explaining their purposes, typical use cases, and providing clear example outputs to help developers and system administrators work more efficiently on Linux systems.

Efficient Ops
Efficient Ops
Efficient Ops
10 Essential Linux Commands Every Developer Should Master

Linux is widely regarded as the most suitable operating system for development due to its openness, freedom, and user control. As more enterprises adopt Linux for servers, mastering essential commands becomes crucial.

Below are ten useful Linux commands with explanations and examples.

01 pgrep

The pgrep command lists process IDs matching a pattern, similar to using ps with grep. $ pgrep -u hchen2244122444 Equivalent to:

ps -ef | egrep '^hchen' | awk '{print $2}'

02 pstree

pstree

displays the process hierarchy in a tree format.

pstree
init-+-acpid
     |-auditd-+-python
     |        `-{auditd}
     |-automount---4*[{automount}]
     |-backup.sh---sleep
     |-dbus-daemon
     |-events/0
     |-events/1
     |-hald---hald-runner---hald-addon-acpi
     |-httpd---10*[httpd]
     |-irqbalance
     |-khelper
     |-klogd
     |-ksoftirqd/0
     |-ksoftirqd/1
     |-kthread-+-aio/0
     |         |-aio/1
     |         |-ata/0
     |         |-ata/1
     |         |-ata_aux
     |         |-cqueue/0
     |         |-cqueue/1
     |         |-kacpid
     |         |-kauditd
     |         |-kblockd/0
     |         |-kblockd/1
     |         |-kedac
     |         |-khubd
     |         |-6*[kjournald]
     |         |-kmirrord
     |         |-kpsmoused
     |         |-kseriod
     |         |-kswapd0
     |         |-2*[pdflush]
     |         |-scsi_eh_0
     |         |-scsi_eh_1
     |         |-xenbus
     |         `-xenwatch
     |-migration/0
     |-migration/1
     |-6*[mingetty]
     |-3*[multilog]
     |-mysqld_safe---mysqld---9*[{mysqld}]
     |-smartd
     |-sshd---sshd---sshd---bash---pstree
     |-svscanboot---svscan-+-3*[supervise---run]
     |                     |-supervise---qmail-send-+-qmail-clean
     |                     |                        |-qmail-lspawn
     |                     |                        `-qmail-rspawn
     |                     `-2*[supervise---tcpserver]
     |-syslogd
     |-udevd
     |-watchdog/0
     |-watchdog/1
     -xinetd

03 bc

bc

is a calculator for high‑precision arithmetic, useful for operations like square‑root calculations.

#!/bin/bash
if [ $# -ne 1 ]
then
    echo 'Usage: sqrt number'
    exit 1
else
    echo -e "sqrt($1)
quit
" | bc -q -i
fi

Example usage:

$ ./sqrt 36
6
$ ./sqrt 2.0000
1.4142
$ ./sqrt 10.0000
3.1622

04 split

split

divides a large file into smaller pieces.

$ ls -l largefile.tar.gz
-rw-r--r-- 1 hchen hchen 436774774 04-17 02:00 largefile.tar.gz
$ split -b 50m largefile.tar.gz LF_
$ ls -l LF_*
-rw-r--r-- 1 hchen hchen 52428800 05-10 18:34 LF_aa
-rw-r--r-- 1 hchen hchen 52428800 05-10 18:34 LF_ab
... (other parts) ...
-rw-r--r-- 1 hchen hchen 17344374 05-10 18:35 LF_ai

Recombine the parts:

$ cat LF_* > largefile.tar.gz

05 nl

nl

works like cat but adds line numbers to each line.

$ nl stdio.h | head -n 10
     1  /* Define ISO C stdio on top of C++ iostreams.
     2  Copyright (C) 1991,1994-2004,2005,2006 Free Software Foundation, Inc.
     3  This file is part of the GNU C Library.
     4  The GNU C Library is free software; you can redistribute it and/or
     5  modify it under the terms of the GNU Lesser General Public
     6  License as published by the Free Software Foundation; either
     7  version 2.1 of the License, or (at your option) any later version.
     8  The GNU C Library is distributed in the hope that it will be useful,

06 mkfifo

mkfifo

creates a named pipe (FIFO) for inter‑process communication.

$ mkfifo /tmp/hchenpipe
$ ls -l /tmp
prw-rw-r-- 1 hchen hchen 0 05-10 18:58 hchenpipe

Write to the pipe (blocks until read): $ ls -al > /tmp/hchenpipe Read from the pipe (unblocks the writer):

$ head /tmp/hchenpipe
... (output of ls -al) ...

07 ldd

ldd

lists the shared libraries required by an executable.

$ ldd /usr/bin/java
    linux-gate.so.1 =>  (0x00cd9000)
    libgij.so.7rh => /usr/lib/libgij.so.7rh (0x00ed3000)
    libgcj.so.7rh => /usr/lib/libgcj.so.7rh (0x00ed6000)
    libpthread.so.0 => /lib/i686/nosegneg/libpthread.so.0 (0x00110000)
    librt.so.1 => /lib/i686/nosegneg/librt.so.1 (0x009c8000)
    libdl.so.2 => /lib/libdl.so.2 (0x008b5000)
    libz.so.1 => /usr/lib/libz.so.1 (0x00bee000)
    libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00aa7000)
    libc.so.6 => /lib/i686/nosegneg/libc.so.6 (0x0022f000)
    libm.so.6 => /lib/i686/nosegneg/libm.so.6 (0x00127000)
    /lib/ld-linux.so.2 (0x00214000)

08 col

col

converts formatted man pages to plain text.

# PAGER=cat
man less | col -b > less.txt

09 xmlwf

xmlwf

validates an XML document, checking for well‑formedness.

$ curl 'https://coolshell.cn/?feed=rss2' > cocre.xml
... (download output) ...
$ xmlwf cocre.xml
$ perl -i -pe 's@<link>@<br>@g' cocre.xml
$ xmlwf cocre.xml
cocre.xml:13:23: mismatched tag

10 lsof

lsof

lists open files and the processes that opened them.

$ lsof | grep TCP
httpd 548 apache 4u IPv6 14300967 TCP *:http (LISTEN)
httpd 548 apache 6u IPv6 14300972 TCP *:https (LISTEN)
sshd 1764 root 3u IPv6 4993 TCP *:ssh (LISTEN)
... (other entries) ...

These commands provide a solid foundation for everyday Linux system administration and development tasks.

Original Source

Signed-in readers can open the original source through BestHub's protected redirect.

Sign in to view source
Republication Notice

This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactadmin@besthub.devand we will review it promptly.

LinuxShellcommand-lineUnixSystem Administration
Efficient Ops
Written by

Efficient Ops

This public account is maintained by Xiaotianguo and friends, regularly publishing widely-read original technical articles. We focus on operations transformation and accompany you throughout your operations career, growing together happily.

0 followers
Reader feedback

How this landed with the community

Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.