Com o GNU sed
:
$ sed -r '3,$s/(.{55} )/\n\t/g' file.in
Depth Description
(ft) -
12370.0 LS: Mdst, blsh gry, sft, occ mod firm, crpxln, prly,
arg, SLTST: blk, firm-mod hd, amor, gt, mod calc, CLST:
lt gry-m gry, sft, amor, wxy
12400.0 LS: Mdst, blsh gry, mod firm, crpxln, chky, arg,
SLTST: blk-dk gry, firm-mod hd, amor, gt, mod calc, CLST:
lt gry-m gry, occ rdsh gry, mod firm, amor, wxy, tr CHK
12430.0 LS: Mdst, blsh gry, mod firm, crpxln, chky, arg,
SLTST: blk-dk gry, firm-mod hd, amor, gt, mod calc, SH:
blk-dk gry, mod firm, blky-plty, occ brit, wxy
12460.0 SH: blk-dk gry, mod firm, blky-plty, occ brit, ea,
SLTST: blk-dk gry, firm-mod hd, amor, gt, mod calc, SST:
gry-dk gry, wl consol, v f, ang, p srt, cotd, slily calc
cmt, no fluor
Isso deixa espaços no final das linhas que podem ser removidos b executando sed 's/ $//'
.
A expressão 3,$s/(.{55} )/\n\t/g
substituirá qualquer execução de 55 caracteres seguida por um espaço pelos mesmos 55 caracteres (e o espaço) seguido por uma nova linha e um recuo por uma tabulação. Isso se repete para todas as correspondências do padrão na linha.