Day 3 - Advanced Linux Commands

Day 3 - Advanced Linux Commands

ยท

3 min read

Welcome to Day 3 of our DevOps journey! Today, we will explore some advanced Linux commands that will improve your skills and make you more productive. These commands are important for any DevOps engineer because they are used in many daily tasks.

1. awk

awk is a tool for searching and processing patterns in text. It helps you manipulate data and create reports. You can use awk to extract specific parts of a file and perform complex operations on data.

Example:

Print the second column of a file:

awk '{print $2}' filename.txt

2. sed

sed (stream editor) is used to parse and transform text. It is often used to search and replace text, but it can do much more.

Example:

Replace all occurrences of 'foo' with 'bar' in a file:

sed 's/foo/bar/g' filename.txt

3. grep

grep is a tool for searching plain-text data for lines that match a pattern.

Example:

Search for 'error' in log files:

grep 'error' /var/log/syslog

4. find

find is used to search for files in a directory and its subdirectories.

Example:

Find all .log files in the /var directory:

find /var -name "*.log"

5. xargs

xargs builds and runs commands from standard input.

Example:

Find all .log files and delete them:

find /var -name "*.log" | xargs rm -f

6. tar

tar (tape archive) is used to create and manage archive files.

Example:

Create a tarball of the /etc directory:

tar -cvf etc.tar /etc

7. screen

screen is a terminal multiplexer that lets you manage multiple terminal sessions from one window.

Example:

Start a new screen session:

screen -S mysession

8. rsync

rsync is a tool for efficiently transferring and synchronizing files between computers.

Example:

Sync files from local to remote server:

rsync -avz /local/dir user@remote:/remote/dir

9. top & htop

top shows a dynamic view of system processes, while htop is a more user-friendly version.

Example:

Display the dynamic view of processes:

top

Launch htop (if installed):

htop

10. netstat & ss

netstat and ss are tools for displaying network connections, routing tables, and other network-related information.

Example:

Display network connections:

netstat -tuln

Display detailed socket information:

ss -tuln

Conclusion

Learning these advanced Linux commands will make you more efficient and capable as a DevOps engineer. These tools are essential for system administration, troubleshooting, and automation tasks. Keep practicing and experimenting with different options to find what works best for you.

Stay tuned for Day 4, where we'll learn about shell scripting to automate repetitive tasks and streamline your workflows!

ย