Home  >  Article  >  Operation and Maintenance  >  What are the search commands for Linux cloud servers and how to use them

What are the search commands for Linux cloud servers and how to use them

PHPz
PHPzforward
2023-05-15 08:43:051486browse

whereis

The whereis command is used to find binary files, source code and help manuals. whereis only searches within the scope of several commonly used installation directories, and does not search all files on the entire system. Although this is a limitation of whereis, it is precisely for this reason that the search speed of whereis is very fast. It's also worth noting that whereis will not look for commands built into the shell.

For example, we want to find the ls command:

whereis ls

The results are as follows, where /bin/ls is the path of ls, and the other two are the paths of the help manual.

ls: /bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

If we copy ls to the home directory and /usr/bin/ls directory, execute the whereis command again:

cp /bin/ls ~
cp /bin/ls /usr/bin/ls
whereis ls

The results are as follows. It can be found that whereis does not search the home directory because The home directory is not one of the commonly used installation directories.

ls: /bin/ls /usr/bin/ls /usr/share/man/man1/ls.1.gz /usr/share/man/man1p/ls.1p.gz

Use whereis to find cd shell built-in commands:

whereis cd

The results are as follows, only the path to the help manual is shown.

cd: /usr/share/man/man1/cd.1.gz /usr/share/man/man1p/cd.1p.gz

locate

The locate command is a search tool based on the file database (/var/lib/mlocate/mlocate.db). The file database is a mirror of the entire file system. The search mode of the locate command defaults to fuzzy matching, which means that all files containing file names will be found, so there are usually more results returned. It's worth noting that the file database is usually updated once a day, so some files that have just been created or deleted may not be found. We can execute the updatedb command to manually update this database. Since the search is based on the file database rather than the file system, the execution speed of locate is also quite fast.

Still using ls as an example to search:

locate ls

We will get a large number of results containing ls. In order to make the output results more accurate, you can use the -b command, which uses exact matching mode to search.

locate -b "\ls"

The output will only contain the path where the ls command is located.

/bin/ls

which

The search scope of which command is the environment variable PATH, and only the first result is returned by default, and the execution speed is very fast. If we are looking for an alias, the which command will also map to the real path corresponding to the alias before searching.

For example, we have defined an alias named ll, and the search command is as follows:

which ll

The results are as follows:

alias ll='ls -l --color=auto'
/bin/ls

If we want to display all results, add the -a command That’s it.

which -a your_command

type

The type command is used to display the type of a certain command, such as aliases, keywords, functions, built-in commands, files, etc. Like the whereis command, the type command only searches within the range of several commonly used installation directories.

Display the type of cd command:

type cd

cd is a shell builtin

Display the type of a certain binary file:

type sudo

sudo is /usr/bin/sudo

Display alias:

type ls

ls is aliased to `ls --color=auto'

find

Among the five search commands, the find command is the most powerful command and the slowest execution speed. Different from the other four commands, the find command is based on file system search, one file node and one file node. The find command can even perform subsequent operations on the search results.

Basic usage of the find command:

find [path] [option] [action]

In the home directory and its subdirectories, find the file named aaa:

find ~ -name 'aaa'

In the entire file system, Search for files with modification time within 24 hours:

find / -mtime 0

In the nginx web directory and its subdirectories, search for files whose user is nginx:

find /usr/share/nginx/html/ -user nginx

In the current directory, search permissions are 744 files:

find -perm -0744

In the current directory, find the file named aaa and display its details:

find -name 'aaa' -exec ls -l {} \;

The above is the detailed content of What are the search commands for Linux cloud servers and how to use them. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:yisu.com. If there is any infringement, please contact admin@php.cn delete