Home Operation and Maintenance Linux Operation and Maintenance How to use the Find command to find files in Linux

How to use the Find command to find files in Linux

Mar 15, 2019 pm 04:25 PM
find linux Find files

Linux Find command is one of the most powerful tools in the Linux system administrator tool library. It allows us to search for files and directories in the directory hierarchy based on an expression given by the user, applying the user to each matching file. specified operation. The following article will show you how to use the Find command. I hope it will be helpful to you.

How to use the Find command to find files in Linux

Linux Find command

Use the find command to determine the file permissions, type, date, ownership, size Wait to search for files. It can also be used in conjunction with other tools, such as grep or sed to perform operations on these files

Before discussing how to use the find command, let's first understand the basic syntax:

find [options] [path...] [expression]
Copy after login

Description:

● Options attribute: Controls the processing of symbolic links, debugging options and optimization methods.

● Path... attribute: Defines the starting directory where find will search for files.

● Expression attribute: consists of "options", "search mode" and "operations separated by operators".

Let’s take a look at the following example:

find  -L /home/projects/ -name "*.js" -exec chmod 644 {} \;
Copy after login

Description: This command contains a parameter -L (options), which allows the find command to follow symbolic links and search /home/projects/ (path ...), find all files ending with .js(expression) and set the permissions of all matching files to 644.

How to find files by type?

To specify the file type to be found, you need to use the -type parameter.

You can use the following descriptors to specify file types:

● f: Regular file

● d: Directory

● l: Symbolic link

●●c: Role device

●b: Block device

●p: Named pipe (FIFO)

● s: Socket

Example:

If you want to find all directories in the current working directory, you can use:

find . -type d
Copy after login

If you want to list all character devices on the system type:

find / -type c
Copy after login

How to find files by name?

Finding files by name is probably the most common use of the find command. To find files by name, pass the -name option along with the name of the file you want to search for.

Example:

To search for a file named document.pdf in the /home/linuxize directory, you can use the following command:

sudo find /home/linuxize -type f -name document.pdf
Copy after login

If To run a case-insensitive search, you can change the -name option using the -iname command:

sudo find /home/linuxize -type f -iname document.pdf
Copy after login

Description: The above command will match Document.pdf, DOCUMENT.pdf..etc.

How to find files by extension?

Searching for files by extension is the same as searching for files by name.

For example:

If you want to find all files ending with .log.gzinside /var/log/nginx directory, you can use:

find /var/log/nginx -type f -name '*.log.gz'
Copy after login

If you want to find all files that do not match the regular expression *.log.gz you can use the -not parameter. For example, to find all files that do not end with *.log.gz, use:

find /var/log/nginx -type f -not -name '*.log.gz'
Copy after login

How to find files by size?

To find files based on their size, you need to pass the -size parameter along with the size condition. File sizes can be specified using the following suffixes:

● b: 512-byte blocks (default)

● c: Bytes

● w: Double-byte words

● k:Kilobytes

● M:Megabytes

● G:Gigabytes

For example:

To be in / To find all files in the tmp directory that are exactly 1024 bytes, you can run the following command:

find /tmp -type f -size 1024c
Copy after login

The find command also allows us to search for files larger or smaller than the specified size. For example:

We can search all files smaller than 1MB in the current working directory, this requires adding a minus sign before the size value:

find . -type f -size -1M
Copy after login

If you want to search files larger than 1MB, you need Use the plus sign:

find . -type f -size +1M
Copy after login

to search even files within a size range. For example, the following command will find all files between 1 and 2 MB:

find . -type f -size +1M -size 21M
Copy after login

How to find files by modification date?

The find command can also search for files based on when they were last modified, accessed, or changed.

Same as when searching by size, you can use the plus and minus signs to specify greater or less than.

For example:

You modified a dovecot configuration file a few days ago, but you forgot the file name. We can easily filter all files in the /etc/dovecot/conf.d/ directory ending in .conf that have been modified in the past 5 days:

find /etc/dovecot/conf.d -name "*.conf" -mtime 5
Copy after login

We can also list 30 days Or all files in the /home directory that were modified more recently:

find /home -mtime +30 -daystart
Copy after login

How to find files by permissions?

To filter files based on file permissions, you need to use the -perm option.

For example:

要在/var/www/html目录中查找权限为775的所有文件:

find /var/www/html -perm 644
Copy after login

还可以使用减号-或斜杠/为数字模式添加前缀。

当斜杠/用作前缀时,至少一个类别(用户,组或其他类别)必须至少为文件匹配设置相应的位。

find . -perm /444
Copy after login

说明:搜索对用户,组或其他人设置了读权限的所有文件。

如果使用减号-作为前缀,则必须至少设置要匹配的文件。

find . -perm -664
Copy after login

说明:搜索对所有者和组具有读写权限的文件,并且其他用户可以读取。

如何按所有者查找文件?

要查找特定用户或组拥有的文件,可以使用-user和-group选项。

例如,要搜索用户拥有的所有文件和目录linuxize,可以运行:

find / -user linuxize
Copy after login

这是更高级的示例,假设是希望查找用户www-data拥有的所有文件,并将匹配文件的所有权从www-data更改为nginx:

find / -user www-data -type f  -exec chown nginx {} \;
Copy after login

相关视频教程推荐:《linux教程

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

The above is the detailed content of How to use the Find command to find files in Linux. For more information, please follow other related articles on the PHP Chinese website!

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

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to use docker desktop How to use docker desktop Apr 15, 2025 am 11:45 AM

How to use Docker Desktop? Docker Desktop is a tool for running Docker containers on local machines. The steps to use include: 1. Install Docker Desktop; 2. Start Docker Desktop; 3. Create Docker image (using Dockerfile); 4. Build Docker image (using docker build); 5. Run Docker container (using docker run).

Difference between centos and ubuntu Difference between centos and ubuntu Apr 14, 2025 pm 09:09 PM

The key differences between CentOS and Ubuntu are: origin (CentOS originates from Red Hat, for enterprises; Ubuntu originates from Debian, for individuals), package management (CentOS uses yum, focusing on stability; Ubuntu uses apt, for high update frequency), support cycle (CentOS provides 10 years of support, Ubuntu provides 5 years of LTS support), community support (CentOS focuses on stability, Ubuntu provides a wide range of tutorials and documents), uses (CentOS is biased towards servers, Ubuntu is suitable for servers and desktops), other differences include installation simplicity (CentOS is thin)

What to do if the docker image fails What to do if the docker image fails Apr 15, 2025 am 11:21 AM

Troubleshooting steps for failed Docker image build: Check Dockerfile syntax and dependency version. Check if the build context contains the required source code and dependencies. View the build log for error details. Use the --target option to build a hierarchical phase to identify failure points. Make sure to use the latest version of Docker engine. Build the image with --t [image-name]:debug mode to debug the problem. Check disk space and make sure it is sufficient. Disable SELinux to prevent interference with the build process. Ask community platforms for help, provide Dockerfiles and build log descriptions for more specific suggestions.

How to view the docker process How to view the docker process Apr 15, 2025 am 11:48 AM

Docker process viewing method: 1. Docker CLI command: docker ps; 2. Systemd CLI command: systemctl status docker; 3. Docker Compose CLI command: docker-compose ps; 4. Process Explorer (Windows); 5. /proc directory (Linux).

Detailed explanation of docker principle Detailed explanation of docker principle Apr 14, 2025 pm 11:57 PM

Docker uses Linux kernel features to provide an efficient and isolated application running environment. Its working principle is as follows: 1. The mirror is used as a read-only template, which contains everything you need to run the application; 2. The Union File System (UnionFS) stacks multiple file systems, only storing the differences, saving space and speeding up; 3. The daemon manages the mirrors and containers, and the client uses them for interaction; 4. Namespaces and cgroups implement container isolation and resource limitations; 5. Multiple network modes support container interconnection. Only by understanding these core concepts can you better utilize Docker.

What computer configuration is required for vscode What computer configuration is required for vscode Apr 15, 2025 pm 09:48 PM

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

What is vscode What is vscode for? What is vscode What is vscode for? Apr 15, 2025 pm 06:45 PM

VS Code is the full name Visual Studio Code, which is a free and open source cross-platform code editor and development environment developed by Microsoft. It supports a wide range of programming languages ​​and provides syntax highlighting, code automatic completion, code snippets and smart prompts to improve development efficiency. Through a rich extension ecosystem, users can add extensions to specific needs and languages, such as debuggers, code formatting tools, and Git integrations. VS Code also includes an intuitive debugger that helps quickly find and resolve bugs in your code.

How to switch Chinese mode with vscode How to switch Chinese mode with vscode Apr 15, 2025 pm 11:39 PM

VS Code To switch Chinese mode: Open the settings interface (Windows/Linux: Ctrl, macOS: Cmd,) Search for "Editor: Language" settings Select "Chinese" in the drop-down menu Save settings and restart VS Code

See all articles