Добавить во второй столбец

Есть CSV-файл

ip,time,name 1.1.1.1,2018-08-31 10:01:03,postgres 2.1.1.1,2018-08-31 12:51:13,oracle 3.1.1.1,2018-08-31 14:32:53,sql 

Мне нужен вывод, как показано ниже

 ip,time,name 1.1.1.1,2018-08-31 10:01:03.1,postgres 2.1.1.1,2018-08-31 12:51:13.1,oracle 3.1.1.1,2018-08-31 14:32:53.1,sql 

2 Solutions collect form web for “Добавить во второй столбец”

Используя sed :

 $ sed '2,$s/,/.1,/2' file ip,time,name 1.1.1.1,2018-08-31 10:01:03.1,postgres 2.1.1.1,2018-08-31 12:51:13.1,oracle 3.1.1.1,2018-08-31 14:32:53.1,sql 

Это применяет замену к строке 2 и далее ( 2,$ ). Подстановка s/,/.1,/2 заменяет вторую запятую на .1, Это /2 в конце команды замещения, которая заставляет его перейти ко второму совпадению.

Использовать этот:

 awk -F, 'BEGIN{OFS=","} NR>1{$2=$2".1"}1' file 
  • -F, устанавливает разделитель поля ввода
  • BEGIN{OFS=","} устанавливает разделитель выходного поля
  • NR>1{$2=$2".1"} добавляет .1 если номер строки больше 0 во второе поле
  • Извлечь .json из текстового файла с произвольным текстом
  • Получение последних строк, соответствующих шаблону в нескольких файлах
  • Как получить последние три последние даты файла журнала?
  • удалить что-нибудь между угловыми скобками, включая его
  • Группировка в строки на основе того же последнего столбца
  • объединение двух файлов в соответствии с указанной строкой
  • Как переформатировать блоки зоны named.conf в одну строку?
  • awk: разделить столбец, распечатать левую часть разделителя и вставить в середине csv
  • Поиск греческого из командной строки
  • Объединить несколько строк в строку со специальными символами
  • sed с несколькими командами, могу ли я использовать флаг w (write)?
  • Linux и Unix - лучшая ОС в мире.