空白で区切られた値のファイルがあります。これを次のように変換する必要があります。
header=tab separated,
records=" ; " separated (space-semicolon-space)
私が今していることは次のとおりです。
cat ${original} | awk 'END {FS=" "} { for(i=1; i<=NR; i++) {if (i==1) { OFS="\t"; print $0; } else { OFS=";" ;print $0; }}}' > ${new}
しかし、部分的にしか機能していません。最初に、元の行は約 90000 行ありますが、何百万行も生成されます。
次に、ここで変更する必要があるヘッダー:
if (i==1) { OFS="\t"; print $0; }
一切改造しておりませんが、
別のオプションは、sed を使用することです。そのジョブを部分的に実行できますが、ヘッダーは変更されません。
cat ${original} | sed 's/\t/ ;/g' > ${new}