Linux uniq command example
Note that uniq will not remove duplicate rows unless they are adjacent. Therefore, you may need to sort them first, or combine the sort command with uniq to get the results. Let me show you some examples.
First, let’s create a file with some repeating lines:
vi ostechnix.txt welcome to ostechnix welcome to ostechnix Linus is the creator of Linux. Linux is secure by default Linus is the creator of Linux. Top 500 super computers are powered by Linux
As you can see in the file above, we have some duplicate lines (the first and second rows, the third and fifth rows are duplicates).
If you use uniq command without any arguments, it will remove all consecutive duplicate lines and display only unique lines.
uniq ostechnix.txt
Sample output:
As you can see, the uniq command removes all consecutive duplicate lines in the given file. You may also notice that the output above still has the second and fourth lines repeated. This is because the uniq command will only delete duplicate rows if they are adjacent. Of course, we can also delete non-consecutive duplicate rows. See the second example below.
sort ostechnix.txt | uniq
Sample output:
Did you see it? There are no duplicate rows. In other words, the above command will display lines that appear only once in ostechnix.txt. We use the sort command in conjunction with the uniq command because, like I mentioned, uniq will not remove duplicate lines unless they are adjacent.
To display only the only line in the file, you can do this:
sort ostechnix.txt | uniq -u
Sample output:
Linux is secure by default Top 500 super computers are powered by Linux
As you can see, only two lines are unique in the given file.
Similarly, we can also display repeated lines in the file, like this:
sort ostechnix.txt | uniq -d
Sample output:
Linus is the creator of Linux. welcome to ostechnix
These two lines are duplicate lines in the ostechnix.txt file. Note that -d (lowercase d) will print only duplicate lines, one per group. To print all duplicate lines, use -D (capital D) like this:
sort ostechnix.txt | uniq -D
See the difference between the two options in the screenshot below:
For some reason, you might want to check the number of times each line is repeated in a given file. To do this, use the -c option as follows:
sort ostechnix.txt | uniq -c
Sample output:
Linus is the creator of Linux. Linux is secure by default Top 500 super computers are powered by Linux welcome to ostechnix
We can also sort by the number of occurrences of each row and then display it, as shown below:
sort ostechnix.txt | uniq -c | sort -nr
Sample output:
welcome to ostechnix Linus is the creator of Linux. Top 500 super computers are powered by Linux Linux is secure by default
We can use the -w option to limit the comparison to a specific number of characters in the file. For example, let's compare the first four characters in the file and display the duplicate lines like this:
uniq -d -w 4 ostechnix.txt
Like limiting the comparison to the first N characters of the line in the file, we can also use the -s option to ignore the comparison of the first N characters.
The following command will ignore the first four characters of each line in the file for comparison:
uniq -d -s 4 ostechnix.txt
To ignore comparing the first N fields (LCTT annotation: the first few columns) instead of characters, use the -f option in the above command.
For more details, please refer to the help section:
uniq --help
You can also use the man command to view:
man uniq
That’s it for today! I hope you now have a basic understanding of the uniq command and its purpose. If you found our guide useful, please share it on your social networks and continue to support us. More goodies are coming, so stay tuned!
Cheers!
The above is the detailed content of Linux uniq command example. For more information, please follow other related articles on the PHP Chinese website!

Windowsispreferredfordesktopcomputingandgamingdueto:1)itsvastsoftwareandgamelibrary,2)user-friendlyandcustomizableinterface,3)extensivehardwarecompatibility,and4)performanceoptimizationcapabilities,despitesomeresource-heavyandupdate-relatedissues.


For years, Linux software distribution relied on native formats like DEB and RPM, deeply ingrained in each distribution's ecosystem. However, Flatpak and Snap have emerged, promising a universal approach to application packaging. This article exami

The differences between Linux and Windows in handling device drivers are mainly reflected in the flexibility of driver management and the development environment. 1. Linux adopts a modular design, and the driver can be loaded and uninstalled dynamically. Developers need to have an in-depth understanding of the kernel mechanism. 2. Windows relies on the Microsoft ecosystem, and the driver needs to be developed through WDK and signed and certified. The development is relatively complex but ensures the stability and security of the system.

The security models of Linux and Windows each have their own advantages. Linux provides flexibility and customizability, enabling security through user permissions, file system permissions, and SELinux/AppArmor. Windows focuses on user-friendliness and relies on WindowsDefender, UAC, firewall and BitLocker to ensure security.

Linux and Windows differ in hardware compatibility: Windows has extensive driver support, and Linux depends on the community and vendors. To solve Linux compatibility problems, you can manually compile drivers, such as cloning RTL8188EU driver repository, compiling and installing; Windows users need to manage drivers to optimize performance.

The main differences between Linux and Windows in virtualization support are: 1) Linux provides KVM and Xen, with outstanding performance and flexibility, suitable for high customization environments; 2) Windows supports virtualization through Hyper-V, with a friendly interface, and is closely integrated with the Microsoft ecosystem, suitable for enterprises that rely on Microsoft software.

The main tasks of Linux system administrators include system monitoring and performance tuning, user management, software package management, security management and backup, troubleshooting and resolution, performance optimization and best practices. 1. Use top, htop and other tools to monitor system performance and tune it. 2. Manage user accounts and permissions through useradd commands and other commands. 3. Use apt and yum to manage software packages to ensure system updates and security. 4. Configure a firewall, monitor logs, and perform data backup to ensure system security. 5. Troubleshoot and resolve through log analysis and tool use. 6. Optimize kernel parameters and application configuration, and follow best practices to improve system performance and stability.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Dreamweaver Mac version
Visual web development tools

WebStorm Mac version
Useful JavaScript development tools

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),
