Я написал скрипт TPT для загрузки CSV-файла в teradata
A, B, C, D
1,"hELL,O", 345,,, ME
2,"HELLO,34" 456,,, REC
3,"QWERTY,45", 456,,, WER
Столбец B также содержит двойные кавычки и запятую. Я хотел бы игнорировать эту запятую внутри двойной кавычки
Я использую атрибуты ниже в tpt. Пожалуйста, предложите, если это может быть обработано в скрипте TPT или вам нужно выполнить команду оболочки в файле csv (команда sed, awk, чтобы справиться с этим)
(
VARCHAR DirectoryPath = '/home/xyz/',
VARCHAR FileName = @file_name,
VARCHAR Format = 'Delimited',
VARCHAR OpenMode = 'Read',
VARCHAR TextDelimiter = ',',
VARCHAR NullColumns = 'Y',
INTEGER SkipRows = 1,
VARCHAR SkipRowsEveryFile = 'Y'
)````
Unix Command, that I tried to replace comma with pipe and to ignore comma in double quotes
````awk 'BEGIN { FPAT="([^,]+)|(\"[^\"]+\")"; OFS="|" } $1=$1' $FILE_NAME_OUT1 > $FILE_NAME_OUT2
Не работает, удаляет поле столбца (запятая,)
Например: -
A, B, C, D
1|"hELL,O"| 345| ME
2|"HELLO,34" 456| REC
3|"QWERTY,45"| 456| WER
Пожалуйста, предложите это.