2016-10-11 4 views
-1

Не уверен, что именно писать в разделе заголовка. У меня есть сценарий, когда я хочу извлечь конкретный столбец из файла с несколькими разделами. Например:Извлечение столбца из файла с несколькими разделами

unit  id  ip 
32  43  5.5.5.1 

machine price 
431-P 45k 
S-34  10k 

Я хочу извлечь содержимое под колонку машины. Любая идея, как я могу это сделать?

ответ

1

Если секция машины последнего раздел, как в вашем примере, то вы можете использовать AWK искать machine в первом поле записи и просто напечатать любую найденную запись после этого момента:

awk '$1=="machine"{machineSection=1}machineSection==1{print $0}' test.txt 

Это испытание первого поля $1, чтобы узнать, есть ли оно machine. Если это так, он устанавливает переменную machineSection в 1. Затем она проверяет, будет ли переменная machineSection равна 1, после чего она выведет запись.

+0

Спасибо @JNevill, он отлично работает. Должен ли печатать $ 0 печатать $ 1, поскольку он печатает как машину, так и ценовую секцию? – Junaid

+0

'$ 0' - это вся запись, где' $ 1' - это только первое поле. Я думаю, это зависит от того, что вы хотите распечатать из этого раздела. – JNevill

+0

Спасибо, я хотел напечатать колонку под машиной. – Junaid