Shell Script - объединение всех строк в файле - PullRequest
0 голосов
/ 23 октября 2018

Подскажите, пожалуйста, как добиться ниже результата.Как объединить строку в сценариях Shell.

Пробовал несколько вещей, но безуспешно.Пожалуйста, проверьте скриншот ниже для того же.enter image description here

Я попытался сделать следующее:

cat RAWDATA.csv | sed '1d'| sort | awk -F',' '{if(a!=$1) {a=$1; printf "\n%s%s",$0,FS} else {a=$1;$1="";printf $0 }} END {printf "\n" }' 

Спасибо, Амит

1 Ответ

0 голосов
/ 23 октября 2018

что-то вроде этого должно работать, очевидно, не проверено, поскольку нет тестируемого входного файла.

$ awk 'BEGIN {FS=OFS=","}
       NR==1 {print; next}
             {ks[k]; for(i=2;i<=NF;i++) if($i!="N") a[k,i]=$i}
         END {for(k in ks) {
                printf "%s", k
                for(i=2;i<=NF;i++) printf "%s", OFS (a[k,i]?a[k,i]:"N");
                print ""}' file
...