【发布时间】:2012-02-22 15:33:04
【问题描述】:
我想在我的系统上查找并计算所有以某个字符串开头的文件,比如“foo”,在 bash 中只使用一行。
我是 bash 新手,所以如果可能的话,我想避免编写脚本 - 我怎样才能只使用简单的 bash 命令来做到这一点,并且可能只使用一行?
到目前为止,我一直在使用find / -name foo*。这将返回文件列表,但我不知道要添加什么来实际计算文件。
【问题讨论】:
我想在我的系统上查找并计算所有以某个字符串开头的文件,比如“foo”,在 bash 中只使用一行。
我是 bash 新手,所以如果可能的话,我想避免编写脚本 - 我怎样才能只使用简单的 bash 命令来做到这一点,并且可能只使用一行?
到目前为止,我一直在使用find / -name foo*。这将返回文件列表,但我不知道要添加什么来实际计算文件。
【问题讨论】:
你可以使用
find / -type f -name 'foo*' | wc -l
-type f 仅包括文件(不包括链接或目录)。wc -l 表示“字数,仅行数”。由于find 将每行列出一个文件,这将返回它找到的文件数。【讨论】:
find / -name foo* | wc -l 应该这样做。这是man wc 的链接。 wc -l统计行数
【讨论】:
* 以便 shell 在 find 看到它之前不会扩展它。
您可以将其通过管道传输到wc
find / -name foo * | wc -l
【讨论】: