Tame the Terminal (Part 4): Count Logs, Slice Text & Echo Like a Pro

Tame the Terminal (Part 4): Count Logs, Slice Text & Echo Like a Pro

Ever feel like your terminal is yelling at you in ancient Greek? Logs flying everywhere, random errors popping up, and you just sitting there typing ls over and over hoping for enlightenment? Been there. Terminal chaos is real.

But here’s the plot twist: you don’t need to be a command-line ninja to bring order to the madness. With a few smart (and actually pretty fun) commands, you can filter, sort, count, and tame the wildest text storms like a pro. Let’s make your terminal a little less scary — and a lot more useful.


👀 Why Should You Care?

If you’ve ever opened a terminal and felt overwhelmed by logs, files, or endless lines of text — this article is for you.

These are the kinds of commands that help you:

  • Quickly sort through messy data
  • Monitor logs in real-time
  • Save hours by avoiding manual file checks
  • Automate tiny tasks and look like a Linux ninja
  • Fix and debug problems faster just by knowing what to look for

Let’s make the terminal your friend — not your frustration.


🔢 Sort and Count

When your logs are blowing up and you want to make sense of the madness, this is where you start.

  • wc -l filename.txt: Count lines in a file. Handy to detect spikes in logs.
  • sort: Sort lines based on a pattern. Use -t for delimiter, -k for key (column), -n for numbers, and -r for reverse.
  • uniq: Filter out repeated lines. Works great when used after sort:
sort test.log | uniq -c

This shows how many times each line appears.

  • xargs: Takes input and runs commands on it. Example:
find . -name "*.log" | xargs -n 1 -p rm
  • Deletes each .log file with user confirmation (-p), one at a time (-n 1).

🧭 View and Navigate Files

Don’t open the whole file — peek inside it smartly.

  • head -n 50 file.txt: Shows the first 50 lines.
  • tail -n 50 file.txt: Shows the last 50 lines.
  • tail -f file.log: Monitor logs in real-time (like watching the logs of a server). Really useful in debugging real time
  • cat file.txt | more: View big files one page at a time.

less file.txt: Same as more, but better. Supports:

  • Backward scroll (press d)
  • Search (/pattern)

🛠️ Output and Redirect Like a Boss

Want to display stuff, save it, or do both at once? These commands are for you.

  • echo: Like print() in programming.
echo "Hello, $USER!"

Use it to show messages or read environment variables.

  • cat: Display file content or combine files.
cat file1.txt file2.txt > combined.txt
  • Or search within files:
cat log.txt | grep "error"
  • tee: Outputs to terminal and saves to file:
apt-get update | tee update-log.txt
  • Add -a to append instead of overwrite.

📐 Math and Format Tools

Perfect for scripts and data tasks where precision matters.

  • printf: A better version of echo.
printf "User: %s\nHome: %s\n" "$USER" "$HOME"
  • bc: The calculator that can handle decimals.
echo "scale=3; (4.3443+4.23434)/2" | bc
  • Outputs average with 3 decimal places. Great for resource monitoring or system loads.

🖥️ System Info and Scripting

Before you install something or run scripts, know your system.

uname: Gives system info.

  • -r: Kernel version
  • -i: Hardware platform
  • -a: All the above

source: Reloads config without restarting the shell. If you update .bashrc or any config:

source ~/.bashrc
  • Keeps your current session running with the new changes.
  • Suppose you are a system administrator and changed some config, and want to reload the config without logging out the users you can use this command.

🧠 TL;DR (Too Long; Didn’t Read)

  • Use wcsort, and uniq to clean up and summarise logs.
  • Navigate files smartly with headtailmore, and less.
  • Use echocat, and tee to display and redirect output efficiently.
  • Do math with bc, and format text precisely using printf.
  • Use uname to learn about your system and source to reload shell configs live.

Want to feel like you own the terminal? These are the tools to help you get there — one simple command at a time.

Post a Comment

Previous Post Next Post