我有一个文件xyz.txt
包含下列信息:如何将此时间戳转换为秒?
19-10-13-404566 1-3039 1 xyz
19-10-14-890768 1-3039 2 zxv
..........................
我想要的文件的第一列转换成在Perl 19*3600 + 10*60 + 13
(68473)。
我有一个文件xyz.txt
包含下列信息:如何将此时间戳转换为秒?
19-10-13-404566 1-3039 1 xyz
19-10-14-890768 1-3039 2 zxv
..........................
我想要的文件的第一列转换成在Perl 19*3600 + 10*60 + 13
(68473)。
从你写的内容来看,不可能计算出你描述的转换应该如何工作。但是Perl常见问题解答中的这个条目可能会帮助您实际更改文件的内容。
How do I change, delete, or insert a line in a file, or append to the beginning of a file?
perl -ne 's/^(\d+)-(\d+)-(\d+)/$1*3600+$2*60+$3/e; print'
不过顺便说一句,你的数学是错误的例子。 19 * 3600 + 10 * 60 + 13是69013.
perl -pi -e 's/^(\d+)-(\d+)-(\d+)/$1*3600+$2*60+$3/e' xyz.txt
这将代替第一列,就在该文件。
这个问题很好理解。还有待观察的是你现在的尝试...... – Zaid 2011-01-31 11:45:33