> ## 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.

# Whereis Command Examples
- URL: https://linuxhandbook.com/whereis-command/
- Published: 2025-03-05T15:15:06.000Z
- Updated: 2025-03-05T15:15:06.000Z
- Author: Abhishek Prakash
- Tags: Commands

The whereis command helps users locate the binary, source, and manual page files for a given command. And in this tutorial, I will walk you through practical examples to help you understand how to use whereis command.

Unlike other [search commands like find](https://linuxhandbook.com/find-command-examples/) that scan the entire file system, `whereis` searches predefined directories, making it faster and more efficient. 

It is particularly useful for system administrators and developers to locate files related to commands without requiring root privileges.

## whereis Command Syntax

To use any command to its maximum potential, it is important to know its syntax and that is why I'm starting this tutorial by introducing the syntax of the whereis command:

```
whereis [OPTIONS] FILE_NAME...
```

Here,

- **OPTIONS**: Flags that modify the search behavior.
- **FILE\_NAME**: The name of the file or command to locate.

Now, let's take a look at available options of the whereis command:

| **Flag** | **Description**                                                                           |
| -------- | ----------------------------------------------------------------------------------------- |
| \-b      | Search only for binary files.                                                             |
| \-s      | Search only for source files.                                                             |
| \-m      | Search only for manual pages.                                                             |
| \-u      | Search for unusual files (files missing one or more of binary, source, or manual).        |
| \-B      | Specify directories to search for binary files (must be followed by -f).                  |
| \-S      | Specify directories to search for source files (must be followed by -f).                  |
| \-M      | Specify directories to search for manual pages (must be followed by -f).                  |
| \-f      | Terminate directory lists provided with -B, -S, or -M, signaling the start of file names. |
| \-l      | Display directories that are searched by default.                                         |

## 1\. Locate all files related to a command

To find all files (binary, source, and manual) related to a command, all you have to do is append the command name to the whereis command as shown here:

```
whereis command
```

For example, if I want to locate all files related to `bash`, then I would use the following:

```
whereis bash
```

![Locate all files related to a command using whereis command](https://linuxhandbook.com/content/images/2024/12/Locate-all-files-related-to-a-command-using-whereis-command.png)

Here,

- `/usr/bin/bash`: Path to the binary file.
- `/usr/share/man/man1/bash.1.gz`: Path to the manual page.

## 2\. Search for binary files only

To locate only the binary (executable) file of a command, use the `-b` flag along with the target command as shown here:

```
whereis -b command
```

If I want to search for the binary files for [the ls command](https://linuxhandbook.com/ls-command/), then I would use the following:

```
whereis -b ls
```

![Search for binary files only](https://linuxhandbook.com/content/images/2024/12/Search-for-binary-files-only.png)

## 3\. Search for the manual page only

To locate only the manual page for a specific command, use the `-m` flag along with the targeted command as shown here:

```
whereis -m command
```

For example, if I want to search for the manual page location for [the grep command](https://linuxhandbook.com/grep-command-examples/), then I would use the following:

```
whereis -m grep
```

![Search for manual page only using the whereis command](https://linuxhandbook.com/content/images/2024/12/Search-for-manual-page-only-using-the-whereis-command.png)

As you can see, it gave me two locations:

- `/usr/share/man/man1/grep.1.gz`: A manual page which can be accessed through `man grep` command.
- `/usr/share/info/grep.info.gz`: An info page that can be accessed through `info grep` command.

## 4\. Search for source files only

To find only source code files associated with a command, use the `-s` flag along with the targeted command as shown here:

```
whereis -s command
```

For example, if I want to search source files for the `gcc`, then I would use the following:

```
whereis -s gcc
```

My system is fresh and I haven't installed any packages from the source so I was given a blank output. 

## 5\. Specify custom directories for searching 

To limit your search to specific directories, use options like `-B`, `-S`, or `-M`. For example, if I want to limit my search to the `/bin` directory for the `cp` command, then I would use the following command: 

```
whereis -b -B /bin -f cp
```

![Limit search for specific directories using whereis command](https://linuxhandbook.com/content/images/2024/12/Limit-search-for-specific-directories-using-whereis-command.png)

Here,

- `-b`: This flag tells whereis to search only for binary files (executables), ignoring source and manual files.
- `-B /bin`: The -B flag specifies a custom directory (/bin in this case) where whereis should look for binary files. It also limits the search to the `/bin` directory instead of searching all default directories.
- `-f cp`: Without `-f`, the whereis command would interpret cp as another directory.

## 6\. Identify commands missing certain files (unusual files)

The `whereis` command can help you find commands that are missing one or more associated files (binary, source, or manual). This is particularly useful for troubleshooting or verifying file completeness.

For example, to search for commands in the `/bin` directory that is missing manual pages, you first have to [change your directory](https://linuxhandbook.com/cd-command-examples/) to `/bin` and then use the `-u` flag to search for unusual files:

```
cd /bin
whereis -u -m *
```

![Search for unsual files using whereis command](https://linuxhandbook.com/content/images/2024/12/Search-for-unsual-files-using-whereis-command.png)

## Wrapping Up...

This was a quick tutorial on how you can use the whereis command in Linux including practical examples and syntax. I hope you will find this guide helpful.

If you have any queries or suggestions, leave us a comment.