Чтение CSV-файла

У меня есть плоский файл, разделенный запятыми, содержимое которого приведено ниже.

Name,Empno,Address,Contact,Company
A,1,”BTM, Bangalore”,1234,”HCL”
B,2,”Tatanagar”,1243,”WIPRO”
C,3,”Patna”,1254,”CTS”
D,4,”Doranda,Ranchi”,1253,”TCS”

Мне нужно получить только имя и контакт для всех. Если я использую разделитель как «», контакт для A и D будет Бангалор и Ранчи, что неверно. Как я могу получить 1-е и 4-е поля. Также сообщите, могу ли я использовать команду awk для получения необходимых сведений.

EDIT Просто чтобы добавить, что это пример данных, мои исходные данные будут иметь еще несколько полей, также может быть запятая в любом поле, которое находится в кавычках.


person Anshu Kunal    schedule 16.05.2012    source источник


Ответы (1)


Я предполагаю, что контакт всегда является предпоследним полем. Вы можете попробовать это

awk -F, '{if(NR>1)printf("%s,%s\n",$1,$(NF-1));}' ip.txt
person Raghuram    schedule 16.05.2012