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 Article

Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Fusion System, Explained
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

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)

Hot Topics

Java Tutorial
1667
14
PHP Tutorial
1273
29
C# Tutorial
1255
24
Linux Architecture: Unveiling the 5 Basic Components Linux Architecture: Unveiling the 5 Basic Components Apr 20, 2025 am 12:04 AM

The five basic components of the Linux system are: 1. Kernel, 2. System library, 3. System utilities, 4. Graphical user interface, 5. Applications. The kernel manages hardware resources, the system library provides precompiled functions, system utilities are used for system management, the GUI provides visual interaction, and applications use these components to implement functions.

vscode Previous Next Shortcut Key vscode Previous Next Shortcut Key Apr 15, 2025 pm 10:51 PM

VS Code One-step/Next step shortcut key usage: One-step (backward): Windows/Linux: Ctrl ←; macOS: Cmd ←Next step (forward): Windows/Linux: Ctrl →; macOS: Cmd →

How to check the warehouse address of git How to check the warehouse address of git Apr 17, 2025 pm 01:54 PM

To view the Git repository address, perform the following steps: 1. Open the command line and navigate to the repository directory; 2. Run the "git remote -v" command; 3. View the repository name in the output and its corresponding address.

How to run java code in notepad How to run java code in notepad Apr 16, 2025 pm 07:39 PM

Although Notepad cannot run Java code directly, it can be achieved by using other tools: using the command line compiler (javac) to generate a bytecode file (filename.class). Use the Java interpreter (java) to interpret bytecode, execute the code, and output the result.

How to run sublime after writing the code How to run sublime after writing the code Apr 16, 2025 am 08:51 AM

There are six ways to run code in Sublime: through hotkeys, menus, build systems, command lines, set default build systems, and custom build commands, and run individual files/projects by right-clicking on projects/files. The build system availability depends on the installation of Sublime Text.

What is the main purpose of Linux? What is the main purpose of Linux? Apr 16, 2025 am 12:19 AM

The main uses of Linux include: 1. Server operating system, 2. Embedded system, 3. Desktop operating system, 4. Development and testing environment. Linux excels in these areas, providing stability, security and efficient development tools.

laravel installation code laravel installation code Apr 18, 2025 pm 12:30 PM

To install Laravel, follow these steps in sequence: Install Composer (for macOS/Linux and Windows) Install Laravel Installer Create a new project Start Service Access Application (URL: http://127.0.0.1:8000) Set up the database connection (if required)

git software installation git software installation Apr 17, 2025 am 11:57 AM

Installing Git software includes the following steps: Download the installation package and run the installation package to verify the installation configuration Git installation Git Bash (Windows only)

See all articles