awk, вырезать символы из подстроки

У меня есть следующие csv. Я пытаюсь удалить 20 из 2017, поэтому он отформатирован как 3717 или 31817. Позиции всегда разные, поскольку некоторые даты имеют однозначные дни. Поскольку год всегда 4 цифры, как я могу удалить 20 из второго столбца, идущего справа налево?

 12 32 20 17 EODTRANSACTION J 87.75   
 12 323 20 17 EODTRANSACTION J 155  
 45 330 20 17 EODTRANSACTION J 270 

Ожидаемый результат

 12 3217 EODTRANSACTION J 87.75   
 12 32317 EODTRANSACTION J 155  
 45 33017 EODTRANSACTION J 270

  • команда sed внутри ожидать скрипт send command
  • совпадение и добавление на основе позиции символа
  • Поиск в определенном столбце для шаблона и вывода всей строки
  • разделение файла в файле
  • как разбить строку после сопоставления определенного символа с помощью команды оболочки?
  • Разделение строки до определенного места
  • с sed, как я могу заменить слово в соответствующей строке?
  • Как назначить результат sed переменной
  • 2 Solutions collect form web for “awk, вырезать символы из подстроки”

    awk- подход:

     awk '{match($2, /^([0-9]+)[0-9]{2}([0-9]{2})$/, a); $2=a[1]a[2]}1' file 

    Выход:

     12 3217 EODTRANSACTION J 87.75 12 32317 EODTRANSACTION J 155 45 33017 EODTRANSACTION J 270 

    match($2, /^([0-9]+)[0-9]{2}([0-9]{2})$/, a) – захватит все цифры из второго поля, кроме 3- го и 4- я цифра в конце

    Замените второе поле на результат: заменив первый «20» во втором поле пустой строкой, затем напечатайте полученную строку:

     awk '{$2=gensub("20", "", 1, $2); print;}' input > output 
    Interesting Posts

    Как я могу удалить весь текст между фигурными скобками в многострочном текстовом файле?

    как получить последний файл в каждом каталоге

    Отключить горячие клавиши Ctrl + Alt в определенных программах

    Веб-интерфейс для поиска / grep / ack

    Поиск файлов по всей стране, созданных в диапазоне дат

    Сервер делегирования префикса DHCPv6 для Linux?

    bash – команда не найдена

    Является ли Gobolinux активным больше?

    Метод командной строки для поиска повторяющихся опечаток с номерами строк

    Действительно ли tar сжимает файлы или просто группирует их вместе?

    Альтернатива с открытым исходным кодом для приложения Google для проверки подлинности

    Apache – Динамические подпапки

    Удалить заголовок в результатах журнала

    Есть ли простой способ обновления информации в known_hosts, когда вы знаете, что изменился ключ хоста?

    Учитывая git commit hash, как узнать, какая версия ядра содержит его?

    Linux и Unix - лучшая ОС в мире.