3 番目の列が 3 桁を超える場合、入力ファイルを処理するために以下の nawk コマンドで if 条件を実装する必要があります。
入力ファイル.txt
123 | abc | 321456 | tre
213 | fbc | 342 | poi
出力ファイル.txt
123 | abc | 321### | tre
213 | fbc | 342 | poi
cat inputfile.txt | nawk 'BEGIN {FS="|"; OFS="|"} {if($3 > 3) $3=substr($3, 1, 3)"###" print}'