У меня есть файл, состоящий из строк данных, где столбцы заданы заданным разделителем.Вставьте столбец с escape-символами в Bash
например.
20170202,ABC,USD,USD,100,20170202
20170202,ABC,GBP,USD,200,20170202
20170201,ABC,NOK,USD,300,20170204
20170131,ABC,DKK,USD,400,20170202
Я хотел бы способ печати строки этого файла, в котором, например, столбец 1 является 20170202 и колонка 4 USD. В то же время я хочу окружить эти столбцы на распечатанном выходе экранами escape, чтобы выделить их пользователю.
Таким образом, в приведенном выше примере, только строки 1 и 2 должны быть напечатаны, и:
- колонка 1 (но не столбец 6) должны быть выделены
- колонка 4 (но не столбец 3) следует будет выделено
В настоящее время у меня есть прикованный grep для каждого переданного аргумента.
например.
cat myfile.txt | grep -w "20170202" | grep -w "USD"
Это переправлена в SED заявление, в котором колодки 20170202 и USD с символами эвакуационных окрашивать выход.
Однако в приведенном выше примере это не будет выполнено для строки 4, так как оно будет ошибочно выводиться с выделенным столбцом 4 и столбцом 6. Он также терпит неудачу для строки 1, для которой будут выделены столбцы 1, 3, 4 и 6 (когда мне нужны только 1 и 4).
Может ли кто-нибудь посоветовать, как это сделать для произвольного выбора столбцов?
Включая awk, поскольку я предполагаю, что решение этого может быть связано с этим.
К сожалению, 1. 2. 3. 4. В начале каждой строки просто уточнить. Они не существуют в фактическом файле. Как ваш ответ меняется, учитывая это? – Seraph
@Seraph: см. Редактирование. – sjsam
Благодарим за помощь – Seraph