如何在Linux中查找更大或者更小于x大小的文件

时间:2020-03-21 11:43:36  来源:igfitidea点击:

此简短教程介绍如何在Linux和UNIX操作系统中查找更大或者小于x大小的文件。

使用find命令,我们也可以轻松查找更大或者小于给定大小的文件。

例如,要查找目录中大于4GB的文件,请输入:

$find . -type f -size +4G

来自我的系统的示例输出:

./VirtualBox VMs/Ubuntu 16.04 LTS Desktop/Ubuntu 16.04 LTS Desktop.vdi
./VirtualBox VMs/Ubuntu 16.04 Server/Ubuntu 16.04 Server.vdi
./Soft_Backup/VHD's/Antergos/Antergos.vdi
./Soft_Backup/VHD's/FreeBSD 10.3 MATE desktop/FreeBSD 10.3 MATE desktop.vdi
./Soft_Backup/VHD's/Fedora 23 desktop/Fedora 23 desktop.vdi
./Soft_Backup/VHD's/Fedora 23 desktop/.goutputstream-UT19IY
./Soft_Backup/VHD's/openSUSE 42.1 Leap Desktop/openSUSE 42.1 Leap Desktop.vdi
./Soft_Backup/VHD's/Ubuntu 17.04 server/Ubuntu 17.04 server.vdi
./Soft_Backup/VHD's/Fedora 23_/Fedora 23 .vdi
./Soft_Backup/VHD's/Ubuntu 16.04 LTS Desktop/Ubuntu 16.04 LTS Desktop.vdi
./Soft_Backup/VHD's/Ubuntu 14.04 LTS desktop/Ubuntu 14.04 LTS desktop.vdi
./Soft_Backup/VHD's/Debian 8 Desktop/Debian 8 Desktop.vdi
./Soft_Backup/VHD's/FreeBSD 10.3 server/FreeBSD 10.3 server.vdi
./Soft_Backup/VHD's/OpenMandriva Lx 3 desktop/OpenMandriva Lx 3 desktop.vdi
./Soft_Backup/VHD's/Elementary OS_/Elementary OS_.vdi
./Soft_Backup/OS Images/Linux/openSUSE-Leap-42.1-DVD-x86_64.iso/openSUSE-Leap-42.1-DVD-x86_64.iso
[...]

如我们所见,我有一些大小大于4GiB的文件。
其中点(。
)表示当前目录。

要在整个文件系统中搜索大于4个gib的文件,请运行:

$find/-type f -size +4G

要知道比特定目录中的大小大的文件大于x大小,请将下面的命令中的dot(。
)替换为下面的目录路径。

$find Downloads/-type f -size +4G

上面的命令在下载目录中查找大于4个gib的文件。

类似地,要查找小于x大小的文件,例如4gib,请使用以下命令:

$find . -type f -size -4G

我们可以使用大小交换机进行其他格式,例如

  • "c"字节
  • "w"为双字节字
  • "k"为千字节
  • "m"为兆字节
  • "g"对于gigabytes

例如,要查找大于4MB的文件,请使用以下命令:

$find . -type f -size +4M

要查找小于4MB的文件,请使用以下命令:

$find . -type f -size -4M

我们可能想知道如何在一定大小之间找到文件。
例如,我们可以使用以下命令查找30MB和40MB之间的文件:

$find -size +30M -size -40M

要查找精确大小的文件,例如30MB,运行:

$find -size 30M

有关更多详细信息,请参阅Man页面。

$man find

Find命令也可以通过使用-exec 选项显示它发现的所有文件的长列表。
下面的命令将在30兆和40兆之间找到所有文件,并显示每个文件的长列表。

$find . -type f -size +30M -size -40M -exec ls -l {} +