想要一个linux / unix脚本,它会告诉我目录树中任何行的最大字符。
所以我可以指定一个根文件夹。它向下走,并使用一些掩码处理文件(如*.java
) - 一个查找命令...然后将最大字符保存在var中的一行中并打印出来。
我看到this question但我只想要最大值而不必复制到电子表格或其他处理。
不希望特定角色想要考虑所有角色。
答案 0 :(得分:1)
这将返回当前目录中所有* java文件中包含最多字符数的行(将它们计为管道到wc -c):
perl -e 'while(<>){$l=length; $l>$m && do {$c=$_; $m=$l} } print $c' *.java
这不完全是你问的问题,但这是一个很好的起点。
答案 1 :(得分:1)
使用find
命令:
find -type f -iname "*.java" -exec awk 'length($0)>a{a=length($0)} END{print FILENAME":"a}' {} \;
<强>解释强>
-type f
只喜欢文件-iname "*.java"
仅以.java
-exec awk
为每个文件执行awk
length($0)>a{a=length($0)}
如果该行的长度大于a
将a
设置为该长度。END{print FILENAME":"a}
:最后,打印文件名和长度