Wednesday, September 16, 2026

Linux awk Command Examples

Linux awk Command Examples
===========================

awk '{print $2, $3}' my.txt
    print 2nd & 3rd fields separated by space

awk '{print $2 "," $3}' my.txt
    print 2nd & 3rd field separated by comma

awk '/error/' my.txt
    print lines containing the text "error"

awk '{sum=$1+$2; print sum}' my.txt
    sum up 1st and 2nd fields of each line

awk '{print NR, $0}' my.txt
    add line number to each line and print it

awk '{print NF}' my.txt
    print the number of fields in each line

awk '{print $1, $NF}' my.txt
    print 1st and last fields

awk 'NR>1 {print}' my.txt
    skip the header line

awk '$2 >100' my.txt
    print lines where 2nd field is > 100

awk 'NF>0' my.txt
    remove empty or whitespace-only lines

awk '$1 == 100' my.txt
    print lines where 1st field equals to 100

awk '{s+=$2; c++} END {print s/c}' my.txt
    compute average of 2nd field

awk '$1>100 {s+=$2; c++} END {print s/c}' my.txt
    average with condition

awk '{print toupper($2)}' my.txt
    print 2nd field in uppercase

awk '$1=="ERR" {print $2}' my.txt
    print 2nd field if 1st field is "ERR"

awk '{print "Name:", $1, "Age:", $2}' my.txt
    formatted printing

awk -F',' '{print $2, $3}' my.csv
    use comma "," as the field separator

awk '{print substr($2,1,3)}' my.txt
    extract substring from 2nd field

awk 'function sq(x) {return x*x} {print sq($2)}' my.txt
    define a function

awk '!seen[$1]++' my.txt
    remove duplicate lines based on 1st column

awk 'length($2) > 3' my.txt
    print lines where length of 2nd field is > 3

awk '{gsub(/old/,"new"); print}' my.txt
    replace every "old" with "new"

awk '$1 ~ /ERR/' my.log
    print lines where 1st field matches pattern

awk '$1 !~ /ERR/' my.log
    print lines where 1st field doesn't match pattern

awk '$1 ~ /^[0-9]+$/' my.log
    print lines where 1st field has only digits

awk '{$1=$1; print}' my.txt
    trim whitespace and collapse internal spaces

---

Wednesday, July 1, 2026

Thursday, June 25, 2026

Send a email if the file system is more than 75 %



df -hP | awk '$5+0 >= 75 {print "Filesystem "$6" is "$5" full"}' | mailx -s "Disk Space Alert" gurudatta.nadig@gmail.com

Tuesday, June 23, 2026

Network bonding in Linux and its different modes.

Network bonding combines multiple network interfaces into a single logical interface for redundancy or

increased throughput. Common modes include mode 0 (round-robin), mode 1 (active-backup), mode 4 (802.3ad),

and mode 6 (adaptive load balancing). Configuration is done through /etc/sysconfig/network-scripts/ or netplan.

What is Linux Containers (LXC)

LXC provides operating system-level virtualization through a virtual environment with its own process and

network space. Unlike Docker, which is primarily focused on application containerization , LXC creates

containers that behave more like traditional virtual machines with their own init system and full OS environment.

Linux Control Groups (cgroups) and how do they work?

Control Groups (cgroups) are a kernel feature that allows administrators to allocate resources—such as CPU

time, system memory, network bandwidth, or combinations of these—among user-defined groups of tasks (

processes). Cgroups provide fine-grained control over allocating, prioritizing, denying, managing, and monitoring

system resources. They are fundamental to container technologies like Docker and LXC.

What is Docker containerization

Docker containerization is a lightweight virtualization technology that packages applications and their

dependencies into isolated containers. Unlike traditional virtualization, which runs complete operating systems on a hypervisor, Docker containers share the host OS kernel and run as isolated processes. This makes containers more lightweight, faster to start , and more resource-efficient than traditional virtual machines.



Explain the use of LVM in Linux and its advantages.

LVM (Logical Volume Manager) is a device mapper framework that provides logical volume management for

the Linux kernel. It allows administrators to create, resize, and delete logical volumes dynamically, without the

need to unmount filesystems or stop services. The advantages of LVM include flexible disk management, the

ability to create snapshots for backups, and the capability to combine multiple physical volumes into a single

logical volume group, simplifying storage management and optimizing disk usage

What are Linux namespaces and how do they enhance containerization

Linux namespaces are a feature that allows a process to have its own isolated view of system resources,

such as process IDs, user IDs, network interfaces, and mounted filesystems. This isolation is crucial for

containerization , as it enables multiple containers to run on the same host without interfering with each

other. Each container operates within its own namespace, providing security and resource management.

How would you configure a firewall on a Linux system using iptables

To configure a firewall using iptables, I would first check current rules with iptables -L. I would then

define my policy with commands like iptables -P INPUT DROP to drop all incoming traffic by default. I would

add rules using iptables -A INPUT -p tcp --dport 22 -j ACCEPT to allow SSH traffic. After setting up

rules, I would save the configuration using iptables-save to ensure they persist after a reboot.

Sunday, June 21, 2026

How to check the memory leaks in a Linux application

valgrind --leak-check=full ./your_program will show you any memory leaks, including the location where they occurred.


What is fstab.

The fstab (file system table) file is a configuration file located at /etc/fstab that contains information

about disk partitions and filesystems. It specifies how and where the filesystems are mounted, including the device

name, mount point, filesystem type, options, and dump/pass values. The system uses this file during boot to

automatically mount filesystems.

Tuesday, June 16, 2026

what is Fencing

Fencing is a safety mechanism used in clustered systems to isolate a failed or unresponsive node so it cannot corrupt shared resources such as storage, databases, or virtual machines.

In high-availability (HA) clusters, a node may lose communication with the rest of the cluster but continue running. This can lead to a split-brain situation where two nodes believe they own the same resource. Fencing prevents this by forcibly removing the problematic node from service.

Friday, June 12, 2026

How to check the httpd service is running on multiple hosts using bash and Ansible


# FOR loop — to check the httpd service is running or not
for server in web01 web02 web03; do
  echo "Checking $server..."
  ssh "$server" "systemctl status httpd"
done


ansible-playbook check_httpd_status.yml -i inventory.ini


name: Check HTTPD service status on multiple servers
hosts: webservers
become: yes
gather_facts: no

tasks:

name: Get HTTPD service status
ansible.builtin.systemd:
name: httpd
register: httpd_status
name: Display HTTPD status
ansible.builtin.debug:
msg: |
Host: {{ inventory_hostname }}
Service State: {{ httpd_status.status.ActiveState }}
Sub State: {{ httpd_status.status.SubState }}