5
아래 코드에서 여러 열을 정렬하는 방법은 무엇입니까?여러 열 정렬 (Perl)
현재 코드 :
1. $directory
2에서 파일의 @list
을 가져옵니다은의 3 개 값에서 @list
3. 인쇄의 각 요소에 대한 $fileName
, $fileLocation
및 $fileSize
를 얻기 위해 정규식을 사용합니다
$fileName
1 : (2) (3) 고정 폭 열로 4.이어서으로 분류 표시하는 I는 출력하려는
총 파일 수 및 디렉토리의 크기를 출력 다음
다음
3. $fileSize
$directory = '/shared/tmp';
$count = 0;
@list = qx{du -ahc $directory};
printf ("%-60s %-140s %-5s\n", "Filename", "Location", "Size");
foreach(@list) {
chop($_); # remove newline at end
if (/^(.+?K)\s+(.+\/)(.+\.[A-Za-z0-9]{2,4})$/) { # store lines with valid filename into new array
# push(@files,$1);
$fileSize = $1;
$fileLocation = $2;
$fileName = $3;
if ($fileName =~ /^\./) {
next; }
printf ("%-60s %-140s %-5s\n", $fileName, $fileLocation, $fileSize);
$count++;
}
else {
next;
}
}
print "Total number of files: $count\n";
$total = "$list[$#list]";
$total =~ s/^(.+?)\s.+/$1/;
print "Total directory size: $total\n";