Как извлечь данные cloumn из csv-файла с помощью команды оболочки

#shell #command

Вопрос:

У меня есть следующий CSV-файл в качестве входных данных

 sample1 compute.googleapis.com/projects/project_ID1/zones/europe-west2-a test1
sample1 compute.googleapis.com/projects/project_ID2/zones/europe-west2-a test2
sample1 compute.googleapis.com/projects/project_ID3/zones/europe-west2-a test3
 

Как я могу использовать команду оболочки для извлечения идентификатора проекта из столбца 2 вышеуказанного файла и сохранения его в формате CSV, как показано ниже
, введите код здесь

 sample1 project_ID1 test1
sample1 project_ID2 test2
sample1 project_ID3 test3
 

Спасибо
Аджит

Комментарии:

1. Если я не ошибаюсь , csv-это файл, разделенный запятыми, вывод, показанный в вопросе, не заканчивается запятой после каждой записи

Ответ №1:

Небольшая модификация вышеупомянутого решения @Arkadiusz Drabczyk даст данные, разделенные запятыми

Код :

 awk -F '[/ ]' '{print $1 "," $4 "," $7}' demo.txt
 

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

 sample1,project_ID1,test1
sample1,project_ID2,test2
sample1,project_ID3,test3
 

Вы можете записать вышеуказанные данные в новый файл, используя приведенную ниже команду

 awk -F '[/ ]' '{print $1 "," $4 "," $7}' demo.txt >> demo.csv
 

Ответ №2:

Остроумие не в порядке:

 $ awk -F '[/ ]' '{print $1, $4, $7}' FILE
sample1 project_ID1 test1
sample1 project_ID2 test2
sample1 project_ID3 test3