Perl에서 더 좋은 모듈을 발견하지는 못해서, 일일이 파일 사이즈를 모두 더해서 폴더 사이즈를 구하였다. 그래서 시간이 좀 걸린다.
첫번째 방법
첫번째 방법
use v5.10; use strict; use warnings; use File::Find; sub get_folder_size { my ($dst_folder) = @_; my $folder_size = 0; find( sub { $folder_size += -f $_ ? -s _ : 0 }, $dst_folder ); return $folder_size; } say "Folder Size : ".get_folder_size("C:\\");
두번째 방법
# ------------------------------------------------------------------------------ # 필요한 모듈 : cpanm -n File::Find::Object # ------------------------------------------------------------------------------ use v5.10; use strict; use warnings; use File::Find::Object; sub get_folder_size { my ($dst_folder) = @_; my $folder_size = 0; my $tree = File::Find::Object->new({}, ($dst_folder)); while(my $file = $tree->next()) { next unless -e $file; # 존재하지 않으면 다음 next unless -f $file; # 일반파일이 아니면 다음 next unless -r $file; # next unless -R $file; # $folder_size += -s $file; } return $folder_size; } say "Folder Size : ".get_folder_size("C:\\");
'Language > Perl' 카테고리의 다른 글
(Perl) MojoExample 이용해서 사이트 만들기 (0) | 2014.05.01 |
---|---|
(Perl) Hitachi Storage 장애 체크 (Web) (0) | 2013.03.14 |
(Perl) SAN 스위치 장애 체크 (Telnet) (0) | 2013.03.11 |
Perl : 모듈 관리 (0) | 2012.11.05 |
Perl : StrawberryPerl 에서 PAR::Packer 설치하기 (0) | 2012.05.14 |