linux中find:(查找文件)
Linux find 命令是所有 Linux 命令中最有用的一个,同时也是最混乱的一个。它很难,因为它的语法与其他 Linux 命令的标准语法不同。但是,它很强大,因为它允许您按文件名、文件类型、用户甚至是时间戳查找文件。使用find 命令,您不但可以找到具这些属性任意组合的文件,还可以对...
基本格式,Cloud科技。 开始之前,我们先来看一下 find 命令的基本结构: find start_directory test options criteria_to_match action_to_perform_on_results 在以下命令中, find 将开始在当前目录(用“.”表示)中查找任何扩展名为“java”的文件: find . -name "*.java" 以下命令将执行相同的操作。在这两种情况下,您都需要对通配符进行转义以确保它传递到 find 命令并且不由 shell 解释。因此,请将您的搜索字符串放到引号里,或者在它前面加上反斜线: find . -name \*.java 您将需要指定起始目录的完整路径: find /home/bluher -name \*.java 您还可以在搜索字符串中指定多个起始目录。如果以具有相应权限的用户身份运行,以下命令将下到 /usr、/home /tmp 目录查找所有 jar 文件: find usr/ home/ tmp/ -name "*.jar" 但是,如果您没有相应的权限,您在开始浏览许多系统目录时将生成错误消息。以下是一个示例: find: /tmp/orbit-root: Permission denied 您可以通过附加您的搜索字符串来避免混乱的输出,如下所示: find usr/ home/ tmp/ -name "*.jar" 2>/dev/null 这会将所有错误消息发送到空文件,因此提供清理器输出。大量海外服务器 默认情况下,find 是区分大小写的。对于不区分大小写的 find,将 -iname 测试替换为 -name 测试。 find downloads -iname "*.gif" downloads/.xvpics/Calendar05_enlarged.gif downloads/lcmgcfexsmall.GIF 除文件名外,您还可以按类型搜索文件。例如,您可以使用以下命令查找一个目录中的所有子目录: find . -type d 您可以使用以下命令查找您的/usr 目录中的所有符号链接: find /usr -type l 这可能会列出 3,000 多个链接。以下的任何一个命令使用根权限运行都将列出 /usr 目录中的链接以及它所指向的文件: # find /usr/bin -type l -name "z*" -exec ls -l {} \; lrwxrwxrwx 1 root root 8 Dec 12 23:17 /usr/bin/zsh -> /bin/zsh lrwxrwxrwx 1 root root 5 Dec 12 23:17 /usr/bin/zless -> zmore lrwxrwxrwx 1 root root 9 Dec 12 23:17 /usr/bin/zcat -> /bin/zcat find /usr/bin -type l -name "z*" -ls 但是,第二个更短的命令将列出更多的文件,以及目录和 inode 信息:在本文后面的部分中,我们将讨论 -exec 和 -ls 操作的用法。云主机。 其他 find 可以找到的文件类型包括: • b — 块(缓存)特殊 • c — 字符(未缓存)特殊 • p — 命名管道 (FIFO) • s — 套接字 使用根作为 find 命令的起点会极大地降低系统的速度。如果您必须运行这样一个命令,您可以在非高峰时段或晚上运行它。您可以使用以下语法将输出重定向到一个文件: find / -print > masterfilelist.out 如果您错误地输入一个 find 命令,生成大量不必要的输出,只需按 CTRL-C 中断该命令,这将停止最近执行的命令。 在具多个文件系统的企业网络上,限制 find 查找的文件也是一个特别好用的方法。尽可能多地使用选项和测试以减少系统上的负载。用于此目的的两个最有用的选项是 -xdev 和 -mount。它们通过阻止 find 下到其他文件系统(如 MS-DOS、CD-ROM 或 AFS)上的目录中缩短了搜索范围。这将搜索限制为同一类型的文件系统作为起始目录。香港云服务器。 如果运行 mount 命令,双引导系统上的用户可以使用这些选项。假设涉及 Windows 分区,您可以使用类似以下的命令安装它: mount -t vfat /dev/sda1 /mnt/msdos 您使用的实际命令取决于您的系统设置。您可以通过运行 df 或执行以下命令验证该分区已安装: find /mnt/msdos -name "*.txt" 2> /dev/null 您应该看到 MS Windows 分区上列出了很多的文件。现在,运行以下带 -mount 或 -xdev 选项的命令: find / -name "*.txt" -mount 2> /dev/null 或者 find / -name "*.txt" -xdev 2> /dev/null 还可以使用 -fstype 测试明确告知 find 在哪个文件系统中查找,如以下示例中所示: find / -name "*.txt" -fstype vfat 2> /dev/null
(责任编辑:joker) 部分网站内容及图片来源于网络,如有侵权或违规内容请联系管理员删除!
序列号 | CPU | RAM | HDD | 带宽 | 售价(美元) | 免费试用 |
---|---|---|---|---|---|---|
香港服务器1 | E5-2620 | 32G | 1T HDD | 50M/无限流量 | $196.00 | 立即申请 |
香港服务器2 | E5-2650 | 32G | 1T HDD | 50M/无限流量 | $256.00 | 立即申请 |
香港服务器3 | E5-2680 | 32G | 1T HDD | 50M/无限流量 | $316.00 | 立即申请 |
香港服务器4 | E5-2690 | 32G | 1T HDD | 50M/无限流量 | $336.00 | 立即申请 |
香港服务器5 | E5-2697 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器6 | E5-2620*2 | 32G | 1T HDD | 50M/无限流量 | $376.00 | 立即申请 |
香港服务器7 | E5-2650*2 | 32G | 1T HDD | 50M/无限流量 | $436.00 | 立即申请 |
香港服务器8 | E5-2680*2 | 32G | 1T HDD | 50M/无限流量 | $476.00 | 立即申请 |
香港服务器9 | E5-2690*2 | 32G | 1T HDD | 50M/无限流量 | $556.00 | 立即申请 |
香港服务器10 | E5-2697*2 | 32G | 1T HDD | 50M/无限流量 | $596.00 | 立即申请 |
香港服务器11 | E5-2680v4*2 | 32G | 1T HDD | 50M/无限流量 | $696.00 | 立即申请 |
香港服务器12 | E5-2698v4*2 | 32G | 1T HDD | 50M/无限流量 | $796.00 | 立即申请 |
上一篇: win2008 r2 web服务器IIS的安装与基本设置
下一篇: Linux系统日志管理