私がやろうとしているのは、指定された場所にフォルダーを作成し、そのフォルダーに日付とユーザーのイニシャルを付けて名前を付けることです。フォルダ作成時にイニシャルを入力できるようにしたい。正しい形式で日付を生成する方法を理解しましたが、フォルダー名がこの「130506SS」のようなものになるように、ユーザー入力 $initials を一緒に追加する方法を理解する必要があります。これら 2 つの変数を結合して正しいフォルダー名を取得する方法がわかりません。誰でもこれを理解するのを手伝ってもらえますか?
use strict ;
use warnings ;
use POSIX qw(strftime);
my $mydate = strftime("%y%m%d",localtime(time)); #puts the year month date and time in the correct format for the folder name
print "Enter users initials: ";
my $initials = <STDIN>; # prompts for user input
#$mydate.= "SS"; #stores today's date and the initials
$mydate.= $initials;
sub capture {
my $directory = '/test/' . $mydate;
unless(mkdir($directory, 0777)) {
die "Unable to create $directory\n";
}
}
capture(); #creates the capture folder
sub output {
my $directory = '/test2/' . $mydate;
unless(mkdir($directory, 0777)) {
die "Unable to create $directory\n";
}
}
output(); #creates the output folder
編集: 2 つの変数を結合してフォルダー名を作成しようとしている場合を除いて、上記のスクリプトの全体が機能します。($mydate.= $initials;) 代わりに ($mydate.= "SS";) でテストしたところ、スクリプトは完全に機能しました。変数 $mydate と文字列を結合することはできますが、$initials を結合することはできません。