如何在Perforce中获得文件夹中的文件计数?
我想知道Perforce仓库的任何给定文件夹/目录/分支中有多少个文件,但我看不到一种方法。p4fstat命令是我的第一个想法,但它似乎没有返回文件计数的选项。是否有一种简单的方法可以使用图形或命令行客户端获取文件夹中的文件计数?虽然p4 fstat本身不提供获取文件计数的方法,但您可以轻松解析其输出以获取此信息。注意,这在Windows中可以工作,但我认为它很容易为其他操作系统修改。以下是您的操作方法:如何在Perforce中获得文件夹中的文件计数?,perforce,Perforce,我想知道Perforce仓库的任何给定文件夹/目录/分支中有多少个文件,但我看不到一种方法。p4fstat命令是我的第一个想法,但它似乎没有返回文件计数的选项。是否有一种简单的方法可以使用图形或命令行客户端获取文件夹中的文件计数?虽然p4 fstat本身不提供获取文件计数的方法,但您可以轻松解析其输出以获取此信息。注意,这在Windows中可以工作,但我认为它很容易为其他操作系统修改。以下是您的操作方法: p4 fstat -T depotFile //depot/some/folder/...
p4 fstat -T depotFile //depot/some/folder/... | find /c "... depotFile"
也可以使用p4 files命令执行此操作,如下所示:
p4 files //depot/some/folder/... | find /c "//"
虽然p4fstat本身不提供获取文件计数的方法,但您可以轻松解析其输出以获取此信息。注意,这在Windows中可以工作,但我认为它很容易为其他操作系统修改。以下是您的操作方法:
p4 fstat -T depotFile //depot/some/folder/... | find /c "... depotFile"
也可以使用p4 files命令执行此操作,如下所示:
p4 files //depot/some/folder/... | find /c "//"
请尝试以下命令:
p4 files //depot/dir1/dir2/... | wc -l
说明:
p4文件//depot/dir1/dir2/。。。是将dir2下的文件递归打印到屏幕的命令
通过wordcount行| wc-l来计算输出行数的管道
这适用于Linux/Unix系统,如果您使用的是cygwin或其他类似Linux的终端,则适用于Windows。请尝试以下命令:
p4 files //depot/dir1/dir2/... | wc -l
说明:
p4文件//depot/dir1/dir2/。。。是将dir2下的文件递归打印到屏幕的命令
通过wordcount行| wc-l来计算输出行数的管道
这适用于Linux/Unix系统,如果您使用的是cygwin或其他类似Linux的终端,则适用于Windows。Powershell方法:
要统计特定目录中的文件,请执行以下操作:
p4 files //depot/dir1/dir2/... | Measure-Object
或者:
(p4 files //depot/dir1/dir2/...).Count
以下内容将为您提供对象中所有子目录及其文件计数的列表,您可以将其作为表格查看、排序、导出为csv等:
p4 dirs //depot/dir1/* | Select-Object -Property @{Name="Path";Expression={$PSItem}},@{Name="FileCounts";Expression={(p4 files $PSItem/...).Count}}
Powershell方法:
要统计特定目录中的文件,请执行以下操作:
p4 files //depot/dir1/dir2/... | Measure-Object
或者:
(p4 files //depot/dir1/dir2/...).Count
以下内容将为您提供对象中所有子目录及其文件计数的列表,您可以将其作为表格查看、排序、导出为csv等:
p4 dirs //depot/dir1/* | Select-Object -Property @{Name="Path";Expression={$PSItem}},@{Name="FileCounts";Expression={(p4 files $PSItem/...).Count}}
使用p4 size-s命令
或者,如果您只需要计数:
C:\test>p4 -F %fileCount% sizes -s ...
5
显然,file参数可以是其他任何东西来代替。。。哪个是当前目录使用p4 size-s命令
或者,如果您只需要计数:
C:\test>p4 -F %fileCount% sizes -s ...
5
显然,file参数可以是其他任何东西来代替。。。哪个是当前目录看起来您已经找到了。请注意,如果不希望包含子文件夹,则可能应使用“*”,而不是“…”,作为“。。。包括子文件夹以及您命名的文件夹中的文件。您可以尝试的另一个命令是“p4文件”。但是“p4 fstat”对于您的目的来说非常好,而且它非常快速高效。顺便问一下,你的疑问是为了什么?也就是说,您的工具将根据目录中的文件数量做出什么决定?看起来您已经找到了答案。请注意,如果不希望包含子文件夹,则可能应使用“*”,而不是“…”,作为“。。。包括子文件夹以及您命名的文件夹中的文件。您可以尝试的另一个命令是“p4文件”。但是“p4 fstat”对于您的目的来说非常好,而且它非常快速高效。顺便问一下,你的疑问是为了什么?也就是说,您的工具将根据目录中的文件数量做出什么决定?