How to find broken symbolic links in Linux
In a previous article, we explained what a symbolic link is in Linux. Symbolic links or soft links are used to create shortcuts to other files in Linux. Symbolic links are heavily used in Linux to link libraries.
When the original file pointed by the link is deleted, the link becomes a dead link. It's probably not a good idea to keep such links around.
Now the question comes, how to find broken symbolic links in Linux? Some distributions display broken links in different colors, but this is not a way to find all such broken links.
In this tutorial, I will show you several ways to find dead links (dangling links) in Linux.
Method 1. Use the find command to list all damaged symbolic links
The magical find command can also be used to find broken soft links. Newer versions of this command provide dedicated options for this task.
To find all dead links in the current directory and its subdirectories, you can use the find command, as shown below:
find . -xtype l
Its output will list all broken links:
┌──(linuxmi㉿linuxmi)-[~] └─$ find . -xtype l ./www.linuxmi.com/xpstat ./www.linuxmi.com/linuxmi/linux ./www.linuxmi.com/linuxmi/linuxmi.com/ubuntu ./www.linuxmi.com/linuxmi/linuxmi ./linuxmi.com/share/inuxmi.md ./.mozilla/firefox/0gl7btzd.default-esr/lock ./linuxmi/link_dir

You can use find with exec and delete the links it finds.
Method 2: Use the symlinks command to find broken symbolic links
You can also use a dedicated command called symlinks to handle dead links.
You may have to install the symbolic link command. It is available in Debian. If you are using Ubuntu, you must enable the Universe repository.
sudo apt install symlinks
After installation, you can use it as follows:
symlinks [options] path_to_directory
So, if you have to find a broken link in the current directory, you can use it like this:
┌──(linuxmi㉿linuxmi)-[~] └─$ symlinks . absolute: /home/linuxmi/test -> /home/linuxmi/linuxmi.com/linuxmi/linuxmi.py

Did you notice anything? It only lists one broken link, while the find command has 7 broken links. This is because if you want to search recursively, you must specify the option:
symlinks -r directory
It's not like this. You can also choose to remove all broken links using the -d option of the symlinks command.
┌──(linuxmi㉿linuxmi)-[~] └─$ symlinks -d . absolute: /home/linuxmi/test -> /home/linuxmi/linuxmi.com/linuxmi/linuxmi.py

In fact, symbolic links can be used to correctly manage soft links in the system. It can warn you about links across file systems, change cluttered links to relative ones or shorten lengthy links.
In Linux, there are multiple ways to perform a task. Finding broken symbolic links is the same. I've shown you two methods, but there are certainly others. If you have other favorite commands for managing dead links, please share them with us in the comments section.
On a related topic, you can also read The concept of hard links in Linux.
The above is the detailed content of How to find broken symbolic links in Linux. For more information, please follow other related articles on the PHP Chinese website!

The average annual salary of Linux administrators is $75,000 to $95,000 in the United States and €40,000 to €60,000 in Europe. To increase salary, you can: 1. Continuously learn new technologies, such as cloud computing and container technology; 2. Accumulate project experience and establish Portfolio; 3. Establish a professional network and expand your network.

The main uses of Linux include: 1. Server operating system, 2. Embedded system, 3. Desktop operating system, 4. Development and testing environment. Linux excels in these areas, providing stability, security and efficient development tools.

The Internet does not rely on a single operating system, but Linux plays an important role in it. Linux is widely used in servers and network devices and is popular for its stability, security and scalability.

The core of the Linux operating system is its command line interface, which can perform various operations through the command line. 1. File and directory operations use ls, cd, mkdir, rm and other commands to manage files and directories. 2. User and permission management ensures system security and resource allocation through useradd, passwd, chmod and other commands. 3. Process management uses ps, kill and other commands to monitor and control system processes. 4. Network operations include ping, ifconfig, ssh and other commands to configure and manage network connections. 5. System monitoring and maintenance use commands such as top, df, du to understand the system's operating status and resource usage.

Introduction Linux is a powerful operating system favored by developers, system administrators, and power users due to its flexibility and efficiency. However, frequently using long and complex commands can be tedious and er

Linux is suitable for servers, development environments, and embedded systems. 1. As a server operating system, Linux is stable and efficient, and is often used to deploy high-concurrency applications. 2. As a development environment, Linux provides efficient command line tools and package management systems to improve development efficiency. 3. In embedded systems, Linux is lightweight and customizable, suitable for environments with limited resources.

Introduction: Securing the Digital Frontier with Linux-Based Ethical Hacking In our increasingly interconnected world, cybersecurity is paramount. Ethical hacking and penetration testing are vital for proactively identifying and mitigating vulnerabi

The methods for basic Linux learning from scratch include: 1. Understand the file system and command line interface, 2. Master basic commands such as ls, cd, mkdir, 3. Learn file operations, such as creating and editing files, 4. Explore advanced usage such as pipelines and grep commands, 5. Master debugging skills and performance optimization, 6. Continuously improve skills through practice and exploration.


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

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

SecLists
SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

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.

Atom editor mac version download
The most popular open source editor

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Dreamweaver CS6
Visual web development tools