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

PHPz
Release: 2023-05-15 08:43:05
forward
1498 people have browsed it

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
Copy after login

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
Copy after login

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
Copy after login

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
Copy after login

Use whereis to find cd shell built-in commands:

whereis cd
Copy after login

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
Copy after login

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
Copy after login

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"
Copy after login

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

/bin/ls
Copy after login

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
Copy after login

The results are as follows:

alias ll='ls -l --color=auto'
/bin/ls
Copy after login

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

which -a your_command
Copy after login

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
Copy after login

Display the type of a certain binary file:

type sudo

sudo is /usr/bin/sudo
Copy after login

Display alias:

type ls

ls is aliased to `ls --color=auto'
Copy after login

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]
Copy after login

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

find ~ -name 'aaa'
Copy after login

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

find / -mtime 0
Copy after login

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

find /usr/share/nginx/html/ -user nginx
Copy after login

In the current directory, search permissions are 744 files:

find -perm -0744
Copy after login

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

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

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!

Related labels:
source:yisu.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!