Articles by Dejan Panovski
Grep Multiple Patterns: Match Strings, Words, and Regex
Search for multiple patterns or strings at once with grep using the -e flag, fixed-string matching, alternation, and pattern files.

chgrp Command in Linux: Change File Group Ownership
The chgrp command changes the group ownership of files and directories in Linux. This guide covers syntax, recursive changes, symlink handling, and practical examples.

dpkg Command in Linux: Install and Manage Debian Packages
Use dpkg to install, remove, query, and inspect Debian packages on Ubuntu, Debian, and other Debian-based distributions.

How to Pass Arguments to a Bash Script
This guide explains how to pass arguments to Bash scripts, read positional parameters, loop over $@, set defaults, validate input, and parse flags with getopts.

reboot Command in Linux: Restart with systemctl and shutdown -r
Three commands cover common Linux reboot scenarios: reboot for an immediate restart, systemctl reboot for the systemd path, and shutdown -r for scheduled restarts with user notifications.

Bash source Command: Load Scripts and Variables
The Bash source command executes a file in the current shell environment, making its variables and functions available to the calling script. This guide covers syntax, common uses, and practical examples.

CPU Info on Linux: Check CPU Details from the Command Line
Two commands give you everything about your CPU on Linux: /proc/cpuinfo for raw per-core details, and lscpu for a readable summary. See how to use both.

tr Command in Linux: Translate, Delete, and Squeeze Characters
The tr command translates, deletes, and squeezes characters from standard input. This guide covers tr syntax, character sets and ranges, case conversion, removing line endings, and practical pipeline examples.

Understanding the /etc/fstab File in Linux
The /etc/fstab file defines how filesystems and storage devices are mounted at boot. This guide explains the fstab format, field meanings, mount options, and how to add new entries safely.

How to Create Bash Aliases
Bash aliases let you shorten long commands into short, memorable shortcuts. This guide covers alias syntax, persistent aliases in .bashrc, and bash functions for shortcuts that take arguments.

iptables Command in Linux: Manage Firewall Rules
Manage Linux firewall rules with iptables. This guide covers tables and chains, listing rules, allowing and blocking ports and IP addresses, setting default policies, and saving rules across reboots.

Bash while Loop: Syntax and Examples
Bash while loop syntax and examples: infinite loops, reading files line by line, arithmetic conditions, and the break and continue statements.

Bash: Check if String Contains Substring
Four ways to check if a string contains a substring in Bash: wildcard matching, the case statement, the regex operator, and grep. Includes examples and a Quick Reference.

Network Bandwidth Monitoring Tools: iftop, nload, bmon, and vnstat
Compare nload, iftop, bmon, and vnstat for checking Linux network bandwidth in real time and tracking historical traffic usage.

rm Command in Linux: Remove Files and Directories
Use the rm command in Linux to delete files and directories, with examples for recursive removal, force mode, prompts, glob patterns, and safer rm -rf usage.

nano Save and Exit: Save Files and Quit the Editor
Save and exit nano with Ctrl+O and Ctrl+X. This guide also shows how to quit without saving, save under a new filename, and handle permission errors.

Bash set Command: set -e, set -x, and set -u Explained
How the bash set builtin changes shell behavior, with practical examples of set -e to exit on errors, set -u to catch unset variables, set -x to trace execution, and pipefail.

How to List Installed Packages on Debian
List installed packages on Debian with apt, dpkg-query, and apt-mark. Includes filtering, installed versions, manual packages, package counts, export lists, and restore commands.

localhost: 127.0.0.1 and Loopback Explained
Localhost is the hostname for your own computer. This guide explains how localhost, 127.0.0.1, ::1, loopback, /etc/hosts, and 0.0.0.0 work on Linux and other systems.

How to Change a Git Commit Message
Change or edit the last Git commit message with git commit --amend, or reword older commits with an interactive rebase. Covers pushed and unpushed commits.

