Я бы ожидать -M $_
быть отрицательным, но оно равно нулю для:-М Script время начала времени модификации файла минус, в дни
perl -E 'qx(touch $_), sleep(5), say -M for "/tmp/file"'
perldoc ли упоминает такое поведение?
Я бы ожидать -M $_
быть отрицательным, но оно равно нулю для:-М Script время начала времени модификации файла минус, в дни
perl -E 'qx(touch $_), sleep(5), say -M for "/tmp/file"'
perldoc ли упоминает такое поведение?
Я думаю, что это объясняет то, что вы видите
perl -E 'say "START TIME",$^T; qx(touch $_), sleep(5), say -M for "/tmp/file"; say "STAT ON FILE", (stat(_))[9]'
выход, когда я побежал
START TIME1434460114
0
STAT ON FILE1434460114
1) скрипт начинает $^T устанавливается на 1434460114
2) почти сразу файл «/ tmp/file» выполняется с временем изменения 1434460114
3) спящий режим в течение 5 секунд
4) -M сообщает разность времени модификации на файл и время запуска сценария в качестве нулевого
попробовать это вместо
perl -E 'say "START TIME",$^T; sleep(5),qx(touch $_), say -M for "/tmp/file"; say "STAT ON FILE", (stat(_))[9]'
выхода на моей системе
START TIME1434460296
-5.78703703703704e-05
STAT ON FILE1434460301
Для получите отрицательное значение, вы должны сначала выполнить 'sleep' * *. –
@MichaelCarman да, действительно. :) –