как обрезать немного слов в 2-м столбце для отображения в текстовом файле

Исходный:

'abc','X:1234','cde', 'YYY', 'XYZ'
'abc','X:2345'','cde', 'YYY', 'XYZ'

Хочу к результату с ниже, в котором 2-я обрезка столбца к 4 символам, прежде является 6 символами.

'abc','X:12','cde', 'YYY', 'XYZ'
'abc','X:23'','cde', 'YYY', 'XYZ'

Я имею, только знают, как получить 2-й столбец с символом для обрезки, но не знайте, как отобразить все

awk -F, -vOFS="," '{print substr($2,2,4)}' test.txt  > test2.txt
result:
X:12
X:23

Посоветуйтесь с символом для обрезки и отобразите все столбцы одновременно.Спасибо за помощь!

1
задан 3 January 2020 в 07:45

1 ответ

Односторонняя дорога:

awk -F, '{$2=q substr($2,2,4) q;}1' OFS=, q="'" test.txt 

$2=q substr($2,2,4) q - 2-й столбец изменяется, где мы извлекаем 4 символа и окружаем его кавычкой (q)

1 - распечатайте каждую строку

OFS=, Используйте запятую в качестве Выходного разделителя полей

4
ответ дан 11 January 2020 в 09:44

Другие вопросы по тегам:

Похожие вопросы: