Articles by Dejan Panovski
How to Search in Vim / Vi
Learn how to search in Vim / Vi with forward and backward search, whole-word matching, case sensitivity, search highlighting, and smartcase examples.

How to Mount and Unmount File Systems in Linux
Learn how to mount and unmount file systems in Linux using the mount and umount commands, with examples for USB drives, ISO files, NFS shares, and persistent /etc/fstab entries.

Find and Replace in Vim / Vi
Step-by-step guide to finding and replacing text in Vim using the :substitute command. Covers ranges, flags, regex, case sensitivity, and practical examples.

Bash Comments: Single-Line, Multiline, and Best Practices
Learn how to comment in Bash scripts with single-line, inline, and multiline comment patterns. Includes block comment workarounds and best practices for readable shell scripts.

How to Remove (Delete) Files and Directories in Linux
Learn how to delete files and directories in Linux using the rm, rmdir, unlink, and shred commands, with examples for single files, wildcards, recursive removal, and safe deletion workflows.

xargs Command in Linux: Usage and Examples
The xargs command builds and executes commands from standard input. This guide covers the most useful xargs options with practical examples.

locate Command in Linux: Find Files Quickly
Search for files and directories by name using the locate command in Linux. Covers installation, database updates, pattern matching, and common options.

Listing Linux Services with systemctl
Use the systemctl command to list running, failed, and enabled Linux services. Includes filtering by state, checking status, and listing unit files.

Find Large Files in Linux: Using find and du
Find the largest files and directories in Linux using the find and du commands. Includes practical examples for sorting by size and cleaning up disk space.

How to Set Up SFTP Chroot Jail
Step-by-step instructions for setting up an SFTP Chroot Jail on Linux to restrict users to their home directories using OpenSSH.

How to Truncate Files in Linux: Empty Files Without Deleting
Empty a file without deleting it using shell redirection or the truncate command. Covers permissions, sudo workarounds, and truncating log files.

How to Use the Linux ftp Command to Transfer Files
Transfer files to and from a remote server using the Linux ftp command. Covers connections, downloads, uploads, passive mode, and binary transfers.

lsmod Command in Linux: List Kernel Modules
Display all currently loaded Linux kernel modules with lsmod. This guide covers output format, filtering, and related module management commands.

Bash until Loop
Repeat commands until a condition becomes true with the Bash until loop. Includes syntax, practical examples, and comparisons with the while loop.

How to Install Git on Debian 13
Step-by-step instructions for installing and configuring Git on Debian 13 Trixie using apt or by compiling from source.

rename Command in Linux: Rename Multiple Files
Batch rename files in Linux with the rename command using Perl regular expressions. Includes syntax, examples, and tips for the Perl and C versions.

Crontab: Scheduling Cron Jobs in Linux
Cron is a Linux scheduling daemon that runs tasks at defined intervals. This guide explains crontab syntax, operators, predefined macros, environment variables, and practical scheduling examples.

ss Command in Linux: Display Socket Statistics
The ss command displays socket statistics and open ports and is the modern replacement for netstat. This guide explains how to list TCP, UDP, and Unix sockets, filter by port and state, and identify which process owns a socket.

pgrep Command in Linux: Find and Filter Running Processes
The pgrep command finds running processes by regex pattern, user, terminal, or parent PID and prints matching PIDs. This guide covers exact matching, filtering options, and script-friendly exit checks.

Bash case Statement: Match Patterns in Shell Scripts
The Bash case statement matches a value against a list of patterns and runs the corresponding block. This guide explains argument parsing, syntax, glob patterns, multiple matches, and fall-through behavior.

