Я написал скрипт perl для получения даты и времени. Это действительно работает, но я задаюсь вопросом, есть ли более простой способ форматирования даты в качестве вывода.Простой способ форматирования даты
#!/usr/bin/perl
use DateTime;
my $dt = DateTime->now(time_zone => 'local');
$myTimeStamp = $dt->subtract(days => 1);
$myYear = $myTimeStamp->year;
$myMonth = $myTimeStamp->month;
if (length($myMonth) == 1) {
$myMonth = "0$myMonth";
}
$myDay = $myTimeStamp->day;
if (length($myDay) == 1) {
$myDay = "0$myDay";
}
$myHour = $myTimeStamp->hour;
if (length($myHour) == 1) {
$myHour = "0$myHour";
}
#$myDir = "/var/tmp/logs/$myYear/$myMonth/$myYear$myMonth-";
print "--> $myYear $myMonth $myDay $myHour\n";
# --> 2012 02 28 02
exit 0;
У вас есть объект DateTime в $ myTimeStamp. Объект DateTime имеет метод «strftime». Используйте его :) –