:
$ cat file
1234|sdan:active|sdax:active|sdbh:active|sdcv:active|sddf:active|sddp:active|Total paths 6 : OK
1235|sdc:active|sdm:active|sdw:active|sdbk:active|sdbu:active|sdce:active|Total paths 6 : OK
1236|sdam:active|sdaw:active|sdbg:active|sdde:active|sdcu:active|sddo:active|Total paths 6 : OK
ここではすべてのフィールドを長めに印刷するawkがありますw
の値、またはそのフィールド内の文字列の長さの:あなたがを介して実行したい場合は
$ awk 'BEGIN{OFS=FS="|"; w=11}
{for (i=1;i<=NF;i++) printf "%-*s%s", w, substr($i,1,w), i==NF ? ORS : OFS}
' file
1234 |sdan:active|sdax:active|sdbh:active|sdcv:active|sddf:active|sddp:active|Total paths
1235 |sdc:active |sdm:active |sdw:active |sdbk:active|sdbu:active|sdce:active|Total paths
1236 |sdam:active|sdaw:active|sdbg:active|sdde:active|sdcu:active|sddo:active|Total paths
:
$ awk 'BEGIN{OFS=FS="|"; w=8}
{for (i=1;i<=NF;i++) printf "%-*s%s", w, $i, i==NF ? ORS : OFS}' file
1234 |sdan:active|sdax:active|sdbh:active|sdcv:active|sddf:active|sddp:active|Total paths 6 : OK
1235 |sdc:active|sdm:active|sdw:active|sdbk:active|sdbu:active|sdce:active|Total paths 6 : OK
1236 |sdam:active|sdaw:active|sdbg:active|sdde:active|sdcu:active|sddo:active|Total paths 6 : OK
あなたがその一定の幅に合わせて長いフィールドをカットしたい場合すべてのフィールドに収まる幅を取得し、その幅ですべてのフィールドを印刷します。
$ awk 'BEGIN{OFS=FS="|"}
NR==FNR {for (i=1;i<=NF;i++) w=length($i)+1>w ? length($i)+1 : w; next}
{for (i=1;i<=NF;i++) printf "%-*s%s", w, $i, i==NF ? ORS : OFS}
' file file
1234 |sdan:active |sdax:active |sdbh:active |sdcv:active |sddf:active |sddp:active |Total paths 6 : OK
1235 |sdc:active |sdm:active |sdw:active |sdbk:active |sdbu:active |sdce:active |Total paths 6 : OK
1236 |sdam:active |sdaw:active |sdbg:active |sdde:active |sdcu:active |sddo:active |Total paths 6 : OK
[ask]を参照してからもう一度やり直してください。 –