Как я могу преобразовать эту метку времени в секунды? - PullRequest
0 голосов
/ 31 января 2011

У меня есть файл xyz.txt, содержащий следующую информацию:

19-10-13-404566 1-3039 1 xyz
19-10-14-890768 1-3039 2 zxv
..........................

Я хочу преобразовать первый столбец файла в 19*3600 + 10*60 + 13 (68473) в Perl.

Ответы [ 3 ]

2 голосов
/ 31 января 2011

perl -ne 's/^(\d+)-(\d+)-(\d+)/$1*3600+$2*60+$3/e; print'

Но, кстати, ваша математика не подходит для примера. 19 * 3600 + 10 * 60 + 13 - 69013.

0 голосов
/ 31 января 2011

perl -pi -e 's/^(\d+)-(\d+)-(\d+)/$1*3600+$2*60+$3/e' xyz.txt

Это заменит первый столбец прямо в файле.

0 голосов
/ 31 января 2011

Из того, что вы написали, невозможно понять, как должно работать описываемое вами преобразование. Но эта запись из Perl FAQ может помочь вам на самом деле изменить содержимое вашего файла.

Как изменить, удалить или вставить строку в файл или добавить в начало файла?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...