![]() |
VOOZH | about |
The sort command in Linux is used to sort a file, arranging the records in a particular order. By default, the sort command sorts file assuming the contents are ASCII. Using options in the sort command can also be used to sort numerically.
Let's start with a simple example. Consider a file named 'file.txt' with the following content.
cat file.txtHere we used cat command to display the content inside the file name 'file.txt'.
To sort the lines alphabetically, you can use the following command:
sort file.txtNote: This command does not actually change the input file, i.e. file.txt . We can verify this using cat command .
sort [OPTION]... [FILE]...'options' refer to the various flags and parameters that can be used to customize the sorting behavior, and 'file' is the name of the file to be sorted.
Features of sort command
These options help control how the sort command arranges data based on different formats like text, numbers, dates, and duplicates.
Options | Description |
|---|---|
-o | Specifies an output file for the sorted data. Functionally equivalent to redirecting output to a file. |
-r | Sorts data in reverse order (descending). |
-n | Sorts a file numerically (interprets data as numbers). |
-nr | Sorts a file with numeric data in reverse order. Combines -n and -r options. |
-k | Sorts a table based on a specific column number. |
-c | Checks if the file is already sorted and reports any disorder. |
-u | Sorts and removes duplicate lines, providing a unique sorted list. |
-M | Sorts by month names. |
When a file contains both uppercase and lowercase letters, the sort command sorts uppercase lines first, followed by lowercase ones.
Command:
cat mix.txtsort mix.txtHere,
By default, sort treats numbers as text and sorts them alphabetically. To perform numeric sorting, use the -n option.
cat file1.txtsort -n file1.txt-n: Sorts the content numerically instead of alphabetically.To sort in reverse order, you can use the '-r' option:
cat example.txtNow sorting lines in reverse order using `-r` option in sort command
sort -r example.txtIf you have structured data with multiple columns (like employee records), you can sort based on a specific field or column using the -k option.
Command:
cat employee_data.txtTo achieve this, you can use the 'sort' command
sort -k3 employee_data.txt-k3 Sorts the data based on the third column (e.g., Department).In this example, the employee records are now sorted alphabetically based on the 'Department' column. The 'sort' command, with the custom delimiter, allows you to efficiently organize and analyze tab-separated data, making it a valuable tool for managing structured information in various scenarios.
The sort command helps organize data easily without changing the original file, making it safe for repeated use.