perl: использовать текущий формат даты в части замещения или регулярном выражении - PullRequest
1 голос
/ 01 апреля 2012

У меня есть perl однострочная в Makefile для редактирования файлов на месте:

perl -pi -e 's/(Package version:).*/$1 123/' myfile

Это изменяет строку Package version: и добавляет число (123 в этом примере). Теперь я хотел бы сделать то же самое, но с текущей датой (в формате ISO), так что-то вроде

perl -pi -e 's/(Release date:).*/$1 <current date>/' myfile

Как я могу написать выше <current date>, чтобы получить текущую дату?

Ответы [ 2 ]

4 голосов
/ 01 апреля 2012
perl -MPOSIX -pi -e '$t=strftime("%Y-%m-%d", localtime); s/(Release date:).*/$1 $t/;' myfile

http://ideone.com/J7eIB

1 голос
/ 01 апреля 2012
perl -pi -e 's/(Release date:).*/$1 '"$(date +'%F %T')"'/' myfile
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...