> ## Content Index
> Fetch the complete content index at: https://linuxhandbook.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# How to Find Broken Symlinks in Linux
- URL: https://linuxhandbook.com/find-broken-symlinks/
- Published: 2019-07-24T13:49:14.000Z
- Updated: 2022-10-17T07:36:34.000Z
- Description: This quick tip teaches you various ways to find all the broken symlinks in Linux command line. You'll also learn to manage those broken soft links.
- Author: Abhishek Prakash
- Tags: Tips

In an earlier article, I explained [what is symbolic link in Linux](https://linuxhandbook.com/symbolic-link-linux/). Symbolic links or symlinks or soft links are used for creating shortcuts to other files in Linux. Symbolic links are heavily used in linking libraries in Linux.

When the original file to which the link is pointing is deleted, the link becomes dangling link. Keeping such links may not be a good idea.

Now the question arises, how do you find the broken symbolic links in Linux? Some distributions show broken links in different color but that’s not a way to find all such broken links.

In this tutorial, I’ll show you a couple of ways to find dangling links in Linux.

## Method 1\. Use find command to list all the broken symbolic links

The amazing find command can be used for finding broken soft links as well. The newer versions of this command provide a dedicated option for this task.

To find all the dangling links in the current directory and its subdirectories, you can [use the find command](https://linuxhandbook.com/find-command-examples/) like this:

```
find . -xtype l
```

Its output will list all the broken links:

```
find . -xtype l
./target_link2
./newdir/new_dir/link_dir
```

You may combine [find with exec](https://linuxhandbook.com/find-exec-command/) and [delete the links](https://linuxhandbook.com/delete-links/) it finds.

## Method 2: Use symlinks command to find broken symlinks

You can also use a dedicated command named symlinks to for handling dangling links.

You may have to install the symlinks command. It is available in Debian. If you are using Ubuntu, [you’ll have to enable Universe repository](https://itsfoss.com/ubuntu-repositories/?ref=linuxhandbook.com).

```
sudo apt install symlinks
```

Once installed, you can use it in the following manner:

```
symlinks [options] path_to_directory
```

So, if you have to find the broken links in current directory, you can use it like this:

```
symlinks .
dangling: /home/abhishek/tutorials/target_link2 -> newdir/test_dir/myzip
```

Did you notice something? It lists only one broken link while the find command had two broken links. It’s because if you want to search recursively, you’ll have to specify the option:

```
symlinks -r directory
```

That’s not it. You can also choose to delete all the broken links with the option -d of the symlinks command.

```
symlinks -d .
dangling: /home/abhishek/tutorials/target_link2 -> newdir/test_dir/myzip
deleted:  /home/abhishek/tutorials/target_link2 -> newdir/test_dir/myzip
```

In fact, symlinks can be used to properly manage soft links in your system. It can warn you about links across file systems, change messy links to relative or shorten lengthy links.

In Linux, there could be several ways of doing a task. Finding broken symlinks is the same. I showed you two ways but there can certainly other ways. If you have some other favorite command for managing dangling links, do share it with us in the comment section.

On a related topic, you may want to read about the concept of [hard links in Linux](https://linuxhandbook.com/hard-link/).