Perlを最近使用する機会が多くなった。
そのなかで、今まで使った事がなかったが基本的で便利な機能があったので以下にメモする。
(1) 文字列どうしの結合
"."(ピリオド)で文字列同士を一時的に結合できる。
print "test"."plus"."test2"
> testplustest2
(2) ファイル・フォルダの検索
glob :を使う
glob("*"): カレントフォルダのファイル・フォルダ一覧を取得できる。
以下の様な短いコードで、ネストしたフォルダ構造でも一覧を取得可能。
>sub OpenDir{
> # ディレクトリを開く
> my( $sBaseDir ) = @_;
> my( @FileLists, $sFileName );
> @FileLists = glob( "$sBaseDir/*" );
> print "1: $BaseDir \n";
> # ディレクトリにあるファイル等を1つずつ抽出
> foreach $sFileName( @FileLists ) {
> if(-d $sFileName){
> # さらに下位のディレクトリを開く
> print "D:$sFileName \n";
> &OpenDir($sFileName);
> }else{
> print "F:$sFileName \n";
> }
> }
> print "3:\n";
>}
>
>OpenDir("./");
そのなかで、今まで使った事がなかったが基本的で便利な機能があったので以下にメモする。
(1) 文字列どうしの結合
"."(ピリオド)で文字列同士を一時的に結合できる。
print "test"."plus"."test2"
> testplustest2
(2) ファイル・フォルダの検索
glob :を使う
glob("*"): カレントフォルダのファイル・フォルダ一覧を取得できる。
以下の様な短いコードで、ネストしたフォルダ構造でも一覧を取得可能。
>sub OpenDir{
> # ディレクトリを開く
> my( $sBaseDir ) = @_;
> my( @FileLists, $sFileName );
> @FileLists = glob( "$sBaseDir/*" );
> print "1: $BaseDir \n";
> # ディレクトリにあるファイル等を1つずつ抽出
> foreach $sFileName( @FileLists ) {
> if(-d $sFileName){
> # さらに下位のディレクトリを開く
> print "D:$sFileName \n";
> &OpenDir($sFileName);
> }else{
> print "F:$sFileName \n";
> }
> }
> print "3:\n";
>}
>
>OpenDir("./");





