How to get smartctl -A in CSV values

Its just oneliner ! smartctl -A /dev/sdb | tail -n+7 | tr [:blank:] ";" | tr -s ";" | sed 's/^;//' ID#;ATTRIBUTE_NAME;FLAG;VALUE;WORST;THRESH;TYPE;UPDATED;WHEN_FAILED;RAW_VALUE 1;Raw_Read_Error_Rate;0x002f;200;200;051;Pre-fail;Always;-;0 3;Spin_Up_Time;0x0027;179;179;021;Pre-fail;Always;-;8050 4;Start_Stop_Count;0x0032;100;100;000;Old_age;Always;-;90 5;Reallocated_Sector_Ct;0x0033;200;200;140;Pre-fail;Always;-;0 7;Seek_Error_Rate;0x002e;100;253;000;Old_age;Always;-;0 9;Power_On_Hours;0x0032;042;042;000;Old_age;Always;-;42516 10;Spin_Retry_Count;0x0032;100;253;000;Old_age;Always;-;0 11;Calibration_Retry_Count;0x0032;100;253;000;Old_age;Always;-;0 12;Power_Cycle_Count;0x0032;100;100;000;Old_age;Always;-;85 192;Power-Off_Retract_Count;0x0032;200;200;000;Old_age;Always;-;84 193;Load_Cycle_Count;0x0032;198;198;000;Old_age;Always;-;7700 194;Temperature_Celsius;0x0022;122;109;000;Old_age;Always;-;30 196;Reallocated_Event_Count;0x0032;200;200;000;Old_age;Always;-;0 197;Current_Pending_Sector;0x0032;200;200;000;Old_age;Always;-;0 198;Offline_Uncorrectable;0x0030;100;253;000;Old_age;Offline;-;0 199;UDMA_CRC_Error_Count;0x0032;200;200;000;Old_age;Always;-;0 200;Multi_Zone_Error_Rate;0x0008;100;253;000;Old_age;Offline;-;0