Как обработать только один столбец и конвертировать время Unix в текстовый файл в BASH

У меня есть текстовый файл с таблицей, как

367612510.243586 717.860170
367612512.493918 722.249134
367668441.429983 692.407935
367668479.810461 692.407935
367668482.618858 727.953771
367668515.150386 727.953771

где первый столбец - время UNIX, а второй - какое-то значение. Я хочу отобразить этот список с удобочитаемой датой и временем в BASH. Как это сделать?

Это можно сделать с помощью дополнительного файла сценария и xargs, но я ищу способ сделать это в одной строке.

1 ответ

Решение

Пытаться

awk '{print strftime("%c",$1)}' input.txt

другой подход с использованием цикла while в bash

while read d _; do date -d @$d; done < input.txt

Обновить:

решение Bash для печати второго поля, а также

while read f1 f2; do echo $(date -d @$f1) $f2; done < input.txt
Другие вопросы по тегам