The cut Command
Mastering Text Manipulation

Introduction
When it comes to working with Linux, the command line is a powerful tool that can make your life much easier. While there are many commands available, one that is particularly useful for manipulating text data is cut.
The Power of cut
The cut command is used to extract specified sections from each line of a file or input. By default, cut extracts every character from the beginning to the end of each line. However, it can be used to extract specific fields, columns or sections of a line based on a delimiter or a character position.
Examples
For example, suppose we have a file called data.txt that contains the following lines of data:
John,Smith,25,USA
Maria,Garcia,32,Mexico
Ahmed,Khan,45,Pakistan
If we want to extract only the first names, we can use the following command:
cut -d',' -f1 data.txt
This tells cut to use the comma , as the delimiter and extract only the first field of each line, which contains the first name. The output will be:
John
Maria
Ahmed
We can also use cut to extract a range of characters from each line. For example, to extract only the first three characters of each line from our data.txt file, we can use the following command:
cut -c1-3 data.txt
This will output:
Joh
Mar
Ahm
Another useful feature of cut is the ability to extract a specific column from a file that does not use a delimiter. For example, suppose we have a file called numbers.txt that contains the following data:
1234
5678
9101
To extract the second column (i.e., the second digit of each number), we can use the following command:
cut -c2 numbers.txt
This will output:
2
6
1
Tips
Here are some additional tips for using the cut command:
- To extract the last field of each line, use the
-foption with a negative value. For example, to extract the countries from ourdata.txtfile, we can use the following command:
cut -d',' -f4 -s data.txt
The -s option tells cut to suppress lines that do not contain the delimiter.
- To extract a range of characters from each line using a specific delimiter, use the
-doption followed by the delimiter and the-coption followed by the starting and ending character positions. For example, suppose we have a file calledemails.txtthat contains the following data:
john.smith@example.com
maria.garcia@example.com
ahmed.khan@example.com
To extract only the domain names (i.e., the text after the @ symbol) from each line, we can use the following command:
cut -d'@' -f2 emails.txt | cut -d'.' -f1
This will output:
example
example
example
Conclusion
With the cut command, you can quickly and easily manipulate text data in Linux. Whether you need to extract specific fields from a file, extract a range of characters from each line, or extract a specific column from a file that does not use a delimiter, cut is a powerful tool that can save you time and effort. So next time you’re working with text data in Linux, be sure to give cut a try!
Thank you for reading 🧑💻
Stay tuned for more 🚀
✌️ and logout
