Linux-如何仅对位于目录树深处的TMP子目录中的文件进行计数

问题描述 投票:0回答:2

我需要计算位于TMP目录(Debian计算机)中的所有会话文件sess _ *

所有父目录都在/ somepath / to / clientsDirs

一个客户的目录结构是

../ClientDirX/webDirYX/someDirZx
../ClientDirX/webDirYX/someDirZy
../ClientDirX/webDirYX/tmp
../ClientDirX/webDirYX/someDirZz
../ClientDirX/webDirYX/...
../ClientDirX/webDirYX/someDirZN

../ClientDirX/webDirYY/someDirZx
../ClientDirX/webDirYY/someDirZy
../ClientDirX/webDirYY/tmp
../ClientDirX/webDirYY/someDirZz
../ClientDirX/webDirYY/...
../ClientDirX/webDirYY/someDirZN

所有'someDirZ'和'tmp'目录都有不同数量的子目录。 会话文件仅在tmp目录中,而不在tmp子目录中。在一个'tmp'目录中,可能有超过milions的sess_ *文件->解决方案必须非常有效。

ClientDir X,webDir YY-> XYY始终是数字,但不是连续的线->例如]]

ClientDir1/webDir3/*
ClientDir4/webDir31/*
ClientDir4/webDir35/* 
ClientDir18/webDir2/*
etc.

您能不能通过命令行或bash脚本来帮助我计数tmp目录中的所有sess_ *文件

非常感谢。

Radek

我需要计算位于TMP目录(Debian计算机)中的所有会话文件sess_ *。所有父目录都位于/ somepath / to / clientsDirs中,一个客户端的目录结构为../ ClientDirX / ...

bash file count command
2个回答
0
投票
find /somepath/to/clientsDirs* -type f -name "sess_*"  |wc -l 

0
投票

使用/somepath/to/clientDirs遍历find;忽略名称与someDirZ?匹配的目录和名为tmp的目录的子目录,并为名称与sess_*匹配的每个文件打印一个点。然后计算点数。例如:

© www.soinside.com 2019 - 2024. All rights reserved.