wc -l 在多个文件或目录中

wc -l 在多个文件或目录中

在当前目录中,有一些来自实验的 RunId,是否有任何命令可以一次单独计算 RunId 的数量。我现在对当前目录的每个 RunId 使用以下命令:ls | grep RunId | wc -l

答案1

您运行的命令将告诉您当前目录中名称中包含 RunId 的文件数,假设我想在子目录中执行此操作,我可以这样做:

find . -type f -iname "*RunId*" | wc -l

或者

find . -type f -exec basename | grep -c "RunId"

根据问题的进一步解释进行编辑:如果名称中包含多个 RunId## 的文件,则可以通过以下方式获取每个文件的计数

find . -iname "*RunId*" | grep -o -E "RunId[0-9]*" | sort | uniq -c | sort --stable -n -r

相关内容