Saturday, 12 July 2025

Five Powerful Uses of the sed Command

The sed (stream editor) command is a powerful utility in Unix and Linux systems for parsing and transforming text files or input streams. Here are five common and practical uses of sed that can make your text processing tasks more efficient:

1. Replace Text in a File

You can easily replace a word or pattern in a file using sed:

sed 's/oldword/newword/g' filename.txt

This replaces all occurrences of oldword with newword in filename.txt. The g flag at the end means "global" replacement.

2. Delete Lines Matching a Pattern

To delete all lines containing a specific word:

sed '/unwantedword/d' filename.txt

This removes any line that contains unwantedword from the file.

3. Insert a Line Before a Match

You can insert a line before a matching pattern:

sed '/pattern/i\New line before pattern' filename.txt

This adds "New line before pattern" before any line matching pattern.

4. Print Specific Line Ranges

To print only a range of lines from a file:

sed -n '5,10p' filename.txt

This prints lines 5 through 10. The -n suppresses automatic printing, and p tells sed to print only the specified lines.

5. Edit a File In-Place

Use the -i option to modify a file directly:

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

This replaces all occurrences of foo with bar directly in filename.txt without creating a separate output file.

Conclusion

The sed command is a lightweight yet incredibly powerful tool for automating text editing tasks. Mastering its options can save you hours of manual editing and help you process large datasets more efficiently.

No comments:

Post a Comment