Допустим, у меня есть 2 поля, отображающие время эпохи в микросекундах:
1318044415123456,1318044415990056
Что я хотел сделать, это:
- Вырезать общую частьиз обоих полей: «1318044415»
- Получите разницу оставшихся частей: 990056 - 123456 = 866600
Почему я это делаю?Потому что в awk используется IEEE 754 с плавающей точкой, а не 64-битные целые, и мне нужно получить разницу во времени эпохи двух событий в микросекундах.
Спасибо за любую помощь!
РЕДАКТИРОВАТЬ:
Наконец я нашел наибольшее число, которое Awk мог обработать на Snow Leopard 10.6.8: 9007199254740992
.
Попробуйте это: echo '9007199254740992' | awk -F ',' '{print $1 + 0}'
Версия Awk была 20070501
(произведенаawk --version
)